From b7251a33139d1817e67b330c46d0c7263d2f5e86 Mon Sep 17 00:00:00 2001 From: Amedeo Viscido Date: Fri, 21 Jun 2024 00:17:43 +0200 Subject: [PATCH] Translation to Italian language added. --- frontend/src/lib/components/DeviceCard.svelte | 5 + frontend/src/lib/i18n/it/index.ts | 162 +++++++++--------- frontend/src/routes/account/+page.svelte | 6 +- 3 files changed, 90 insertions(+), 83 deletions(-) diff --git a/frontend/src/lib/components/DeviceCard.svelte b/frontend/src/lib/components/DeviceCard.svelte index db29e704..edd55695 100644 --- a/frontend/src/lib/components/DeviceCard.svelte +++ b/frontend/src/lib/components/DeviceCard.svelte @@ -17,6 +17,7 @@ import { enUS } from 'date-fns/locale/en-US'; import { es } from 'date-fns/locale/es'; import { fr } from 'date-fns/locale/fr'; + import { it } from 'date-fns/locale/it'; import { pt } from 'date-fns/locale/pt'; import { zhCN } from 'date-fns/locale/zh-CN'; import { zhTW } from 'date-fns/locale/zh-TW'; @@ -82,6 +83,10 @@ case 'fr-FR': dateFnsLocale = fr; break; + case 'it': + case 'it-IT': + dateFnsLocale = it; + break; case 'es': case 'es-ES': dateFnsLocale = es; diff --git a/frontend/src/lib/i18n/it/index.ts b/frontend/src/lib/i18n/it/index.ts index 5d320537..03dffc52 100644 --- a/frontend/src/lib/i18n/it/index.ts +++ b/frontend/src/lib/i18n/it/index.ts @@ -28,7 +28,7 @@ const it = { device: { page_title: 'Nuovo dispositivo', tabs: ['Manuale', 'Scansiona la rete'], - card_btn_more: 'Piu\'', + card_btn_more: '...', card_btn_more_edit: 'Modifica', card_btn_more_sleep: 'Dormi', card_btn_more_reboot: 'Riavvia', @@ -73,49 +73,49 @@ const it = { wake_cron_enable: 'Abilita sveglia programmata', sol: 'Sleep-On-LAN', sol_desc1: - 'Puoi spegnere il tuo dispositivo usando lo strumento Sleep-On-LAN. Sleep-On-LAN (SOL) e\' uno strumento esterno che opera sul dispositivo che vuoi spegnere, il quale rende disponibile un endpoint REST. Puoi riferirti al link Usage (in inglese) per le istruzioni.', + 'Puoi spegnere il tuo dispositivo usando lo strumento Sleep-On-LAN. Sleep-On-LAN (SOL) e\' uno strumento esterno che opera sul dispositivo che vuoi spegnere, il quale rende disponibile un endpoint REST. Puoi riferirti al link Uso (in inglese) per le istruzioni.', sol_desc2: - 'SOL is configured to send requests over HTTP instead of UDP to enable authorization and make requests more reliable.', + 'Lo strumento SOL e\' configurato per mandare richieste con il protocollo HTTP invece che UDP per abilitare l\' autorizzazione e rendere le richieste piu\' affidabili', sol_desc3: - 'Therefore, please ensure that you include HTTP:<YOURPORT> in the Listeners section of the SOL configuration.', - sol_enable: 'Enable Sleep-On-LAN', - sol_port: 'SOL Port', - sol_authorization: 'Authorization', - sol_user: 'SOL User', - sol_password: 'SOL Password', - shutdown: 'Shutdown', + 'Pertanto, assicuratevi di includere HTTP:<LA-TUA-PORTA> nella sezione Listeners della configurazione di SOL.', + sol_enable: 'Abilita Sleep-On-LAN', + sol_port: 'Porta SOL', + sol_authorization: 'Autorizzazione', + sol_user: 'Utente SOL', + sol_password: 'Password SOL', + shutdown: 'Spegni', shutdown_desc: - 'This shell command will run inside your container (if you use docker) or on your host (if you use the binary). To verify that works you can run the command inside the container or on your host shell first. Common commands are net rpc for windows, sshpass for linux or curl in general to make web requests.', - shutdown_examples: 'Examples:', - shutdown_examples_windows: 'Shutdown remote windows machine:', - shutdown_examples_linux: 'Shutdown remote linux machine:', - shutdown_cmd: 'Shutdown command', + 'Questo prompt dei comandi girera\' nel tuo container (se usi docker) o direttamente sul tuo host (se usi i file di installazione). Per verificare che funzioni correttamente, puoi eseguire i comandi direttamente nel container o nel tuo sistema host. Alcuni comandi comuni sono net rpc per windows, sshpass per linux oppure curl in generale per fare richieste con HTTP.', + shutdown_examples: 'Esempi:', + shutdown_examples_windows: 'Spegni macchina windows remota:', + shutdown_examples_linux: 'Spegni macchina linux remota:', + shutdown_cmd: 'Comando di spegnimento', shutdown_cron_desc: - 'Just like setting a cron to wake the device, you can also schedule a cron job to shut down this device.', - shutdown_cron: 'Shutdown cron', - shutdown_cron_enable: 'Enable shutdown cron', + 'Settando i parametri esattamente come fareste con cron su linux, potrete cosi anche impostare un azione di spegnimento su questo dispositivo.', + shutdown_cron: 'Parametri di spegnimento per cron', + shutdown_cron_enable: 'Abilita lo spegnimento tramite cron', password: 'Password', password_desc: - 'Some network cards have the option to set a password for magic packets, also called SecureON. Password can only be 0, 4 or 6 characters in length.', - groups: 'Groups', - groups_desc: 'You can add devices to a group to have them sorted by group on the dashboard.', - groups_placeholder: "e.g. 'Basement' or 'Office'", - network_scan_range_saved: 'Scan range saved', + 'Alcune schede di rete hanno una opzione per settare una password per i magic packets, chiamata anche SecureON. La lunghezza della password puo\' essere solo di 0, 4 o 6 caratteri.', + groups: 'Gruppi', + groups_desc: 'Puoi aggiungere un dispositivo ad un gruppo per averli raggruppati nel schermata principale.', + groups_placeholder: "per esempio 'Cantina' o 'Ufficio'", + network_scan_range_saved: 'Intervallo di scansione salvato', network_scan_desc: - "Automatically scan your network for devices. For this to work, you need to run UpSnap as root/admin and have nmap installed and available in your $PATH (For docker users, thats already the case and you don't need to do anything). Scanning might take some seconds.", - network_scan_ip_range: 'IP range', - network_scan_no_range: 'No scan range', - network_scan_unsaved_changes: 'Unsaved changes', - network_scan_running: 'Scan running', - network_scan: 'Scan', + "Scansiona automaticamente la tua rete per i dispositivi disponibili. Affinche' funzioni, devi eseguire UpSnap come root/admin ed avere nmap installato e disponibile nella variabile d'ambiente $PATH (per gli utenti docker, questo e' gia' il caso e non devi cambiare niente). La scansione puo' richiedere alcuni secondi.", + network_scan_ip_range: 'Intervallo IP', + network_scan_no_range: 'Nessuno intervallo di scansione', + network_scan_unsaved_changes: 'Modifiche non salvate', + network_scan_running: 'Scansione in corso', + network_scan: 'Scansiona', network_scan_ip: 'IP:', network_scan_mac: 'Mac:', - network_scan_mac_vendor: 'Mac vendor:', - network_scan_netmask: 'Netmask:', - network_scan_add_all: 'Add all devices', - network_scan_replace_netmask: 'Replace netmask for all devices?', - network_scan_new_netmask: 'New netmask', - network_scan_include_unknown: 'Include devices where name is "Unknown"', + network_scan_mac_vendor: 'Fornitore Mac:', + network_scan_netmask: 'Maschera di rete:', + network_scan_add_all: 'Aggiungi tutti i dispositivi', + network_scan_replace_netmask: 'Modificare la maschera di rete per tutti i dispositivi?', + network_scan_new_netmask: 'Nuova mascheda di rete', + network_scan_include_unknown: 'Includi i dispositivi il cui nome e\' "Unknown" o "Sconosciuto"', require_confirmation: 'Chiedi conferma' }, login: { @@ -130,18 +130,18 @@ const it = { page_title: 'Opzioni', ping_interval_title: 'Intervallo di ping', ping_interval_desc1: - 'Sets the interval in which the devices are pinged. Leave blank to use default value of @every 3s.', + 'Imposta l\'intervallo nel quale i dispositivi vengono testati con ping. Lasciare in bianco per lasciare il valore predefinito @every 3s.', ping_interval_desc2: - 'Learn more about the correct syntax for cron on Wikipedia or refer to the package documentation.', - lazy_ping_title: 'Lazy ping', + 'Per ulteriori dettagli circa la sintassi corretta di cron, fare riferimento a Wikipedia oppure a questa documentazione (in inglese).', + lazy_ping_title: 'Ping pigro', lazy_ping_desc: - "When lazy ping is turned on, UpSnap will only ping devices if there is an active user visiting the website. If it's turned off, UpSnap will always ping devices.", + "Quando il ping pigro e' abilitato, UpSnap effettuera' i ping verso di dispositivi solamente quando un utente effettivamente visita il sito. Se e' spento, allora UpSnap continuera' con il ping sempre.", lazy_ping_enable: 'Abilita', website_title_title: 'Nome del sito', website_title_desc: 'Imposta il nome del sito.', icon_title: 'Icona', icon_desc: 'Imposta una icona personalizzata. I tipi di file supportati sono:', - upsnap_version: 'UpSnap version' + upsnap_version: 'Versione UpSnap' }, users: { page_title: 'Utenti', @@ -162,53 +162,53 @@ const it = { required_field: 'Campo obbligatorio' }, buttons: { - save: 'Save', - delete: 'Delete', - change: 'Change', - reset: 'Reset', - cancel: 'Cancel', - add: 'Add', - confirm: 'Confirm' + save: 'Salva', + delete: 'Cancella', + change: 'Cambia', + reset: 'Resetta', + cancel: 'Annulla', + add: 'Aggiungi', + confirm: 'Conferma' }, welcome: { - step1_page_title: 'Welcome to UpSnap 🥳', - step1_setup_desc: 'Please complete the following steps to finish the setup.', - step1_setup_btn_next: 'Next', - step2_page_title: 'Create an admin account', + step1_page_title: 'Benvenuti ad UpSnap 🥳', + step1_setup_desc: 'Per favore, completate i seguenti passi per terminare l\'installazione.', + step1_setup_btn_next: 'Avanti', + step2_page_title: 'Creare un account amministratore', step2_label_email: 'Email:', step2_label_password: 'Password:', - step2_label_min_chars: 'min. 10 characters', - step2_label_password_confirm: 'Password confirm:', - step2_btn_create: 'Create', - step3_page_title: 'You are all set! 🎉', - step3_page_desc: 'Go ahead and add some devices to your dashboard.', - step3_btn_done: 'Lets go!', - not_expected_title: "I didn't expect you here! 🧐", - not_expected_desc: 'You are already done with the setup! Nothing to do.', - not_expected_back: 'Take me back', - progress_step1: 'Welcome', - progress_step2: 'Create account', - progress_step3: 'Done' + step2_label_min_chars: 'Min. 10 caratteri', + step2_label_password_confirm: 'Conferma la password:', + step2_btn_create: 'Crea', + step3_page_title: 'Abbiamo finito! 🎉', + step3_page_desc: 'Prosegui adesso per aggiungere dispositivi alla tua lista.', + step3_btn_done: 'Andiamo!', + not_expected_title: "Non mi aspettavo di vederti qui! 🧐", + not_expected_desc: 'L\' installazione e\' gia\' terminata! Non ci sono operazioni da svolgere qui.', + not_expected_back: 'Indietro', + progress_step1: 'Benvenuti', + progress_step2: 'Creare un account', + progress_step3: 'Fatto' }, toasts: { - admin_saved: 'Admin saved', - user_saved: 'User saved', - user_created: 'User {username} created', - user_deleted: 'User {username} deleted', - settings_saved: 'Saved settings', - password_changed: 'Password changed. Please login again.', - passwords_missmatch: "Passwords don't match", - permissions_created: 'Permissions for {username} created', - permissions_deleted: 'Permissions for {username} deleted', - permissions_updated: 'Permissions for {username} updated', - permissions_updated_personal: 'Your permissions have been updated', - no_permission: "You don't have permission to visit {url}", - device_created: 'Created {device}', - devices_created_multiple: 'Created {count|int} devices', - device_updated: 'Updated {device}', - device_deleted: 'Deleted {device}', - group_created: 'Created group {group}', - group_deleted: 'Deleted group {group}' + admin_saved: 'Account amministratore salvato', + user_saved: 'Account utente salvato', + user_created: 'Utente {username} creato', + user_deleted: 'Utente {username} cancellato', + settings_saved: 'Impostazioni salvate', + password_changed: 'Password cambiata. Per favore, effettuate di nuovo il login.', + passwords_missmatch: "Le password non corrispondono", + permissions_created: 'I permessi per {username} sono stati creati', + permissions_deleted: 'I permessi per {username} sono stati cancellati', + permissions_updated: 'I permessi per {username} sono stati aggiornati', + permissions_updated_personal: 'I tuoi permessi sono stati aggiornati', + no_permission: "Non hai i permessi necessari per visitare {url}", + device_created: 'Creato dispositivo {device}', + devices_created_multiple: 'Creato/i {count|int} dispositivi', + device_updated: '{device} aggiornato', + device_deleted: '{device} cancellato', + group_created: 'Gruppo {group} creato', + group_deleted: 'Grupp {group} cancellato' }, navbar: { theme: 'Tema', diff --git a/frontend/src/routes/account/+page.svelte b/frontend/src/routes/account/+page.svelte index f073c287..b3582f45 100644 --- a/frontend/src/routes/account/+page.svelte +++ b/frontend/src/routes/account/+page.svelte @@ -15,12 +15,14 @@ // locales const languageEmojis = { + de: '🇩🇪', + 'de-DE': '🇩🇪', en: '🇺🇸', 'en-US': '🇺🇸', fr: '🇫🇷', 'fr-FR': '🇫🇷', - de: '🇩🇪', - 'de-DE': '🇩🇪', + it: '🇮🇹', + 'it-IT': '🇮🇹', pt: '🇵🇹', 'pt-PT': '🇵🇹', es: '🇪🇸',