|
|
@@ -0,0 +1,452 @@
|
|
|
+/* AppBrand.name ("Meetings") omesso intenzionalmente — il nome dell'app rimane invariato nel codice. */
|
|
|
+"AI Companion for Meet" = "Assistente di IA per Meet di Google";
|
|
|
+
|
|
|
+/* MARK: - Generale */
|
|
|
+"OK" = "OK";
|
|
|
+"Cancel" = "Annulla";
|
|
|
+"Continue" = "Continua";
|
|
|
+"Apply" = "Applica";
|
|
|
+"Reset" = "Ripristina";
|
|
|
+"Save" = "Salva";
|
|
|
+"Copy" = "Copia";
|
|
|
+"Copied" = "Copiato";
|
|
|
+"Close" = "Chiudi";
|
|
|
+"Join" = "Partecipa";
|
|
|
+"None" = "Nessuno";
|
|
|
+"Link" = "Link";
|
|
|
+"Stop" = "Ferma";
|
|
|
+"Address" = "Indirizzo";
|
|
|
+"Title" = "Titolo";
|
|
|
+"Notes" = "Note";
|
|
|
+"Start" = "Avvia";
|
|
|
+"Premium" = "Premium";
|
|
|
+"Popular" = "Popolare";
|
|
|
+"Browser" = "Browser";
|
|
|
+"Meeting" = "Riunione";
|
|
|
+"Error" = "Errore";
|
|
|
+"Success" = "Successo";
|
|
|
+
|
|
|
+/* MARK: - Barra di stato */
|
|
|
+"Meetings status menu" = "Menu di stato riunioni";
|
|
|
+"Open App" = "Apri app";
|
|
|
+"Join Meetings" = "Partecipa alle riunioni";
|
|
|
+"Schedule" = "Pianifica";
|
|
|
+"Calendar" = "Calendario";
|
|
|
+"Widgets" = "Widget";
|
|
|
+"AI Companion" = "Assistente IA";
|
|
|
+"Settings" = "Impostazioni";
|
|
|
+"Top meetings" = "Riunioni fissate";
|
|
|
+"No upcoming meetings" = "Nessuna riunione in programma";
|
|
|
+"Sign Out" = "Disconnetti";
|
|
|
+"Sign In" = "Accedi";
|
|
|
+"Quit" = "Esci";
|
|
|
+
|
|
|
+/* MARK: - Schermata iniziale */
|
|
|
+"Preparing your meetings workspace" = "Preparazione dello spazio di lavoro per le riunioni";
|
|
|
+"CONNECTING SERVICES" = "COLLEGAMENTO SERVIZI";
|
|
|
+"READY" = "PRONTO";
|
|
|
+"Plan smart, achieve more" = "Pianifica in modo intelligente, ottieni di più";
|
|
|
+
|
|
|
+/* MARK: - Widget */
|
|
|
+"Add Widget to Desktop" = "Aggiungi widget al desktop";
|
|
|
+"Choose a size and add your Google Meet widget." = "Scegli una dimensione e aggiungi il tuo widget Meet di Google.";
|
|
|
+"Tip: Right-click a desktop widget to remove it." = "Suggerimento: fai clic con il pulsante destro su un widget del desktop per rimuoverlo.";
|
|
|
+"Removed %@ widget from desktop." = "Widget %@ rimosso dal desktop.";
|
|
|
+"Added %@ widget from desktop." = "Widget %@ aggiunto dal desktop.";
|
|
|
+"Added %@ widget to desktop." = "Widget %@ aggiunto al desktop.";
|
|
|
+"Widgets are Premium only. Upgrade to add widgets." = "I widget sono solo per Premium. Aggiorna per aggiungere widget.";
|
|
|
+"Remove Widget" = "Rimuovi widget";
|
|
|
+"Small" = "Piccolo";
|
|
|
+"Medium" = "Medio";
|
|
|
+"Quick actions" = "Azioni rapide";
|
|
|
+"Open Meet" = "Apri Meet di Google";
|
|
|
+"Upcoming meetings" = "Prossime riunioni";
|
|
|
+"Sign in to see upcoming meetings" = "Accedi per vedere le prossime riunioni";
|
|
|
+"Sign in with Google" = "Accedi con account di Google";
|
|
|
+"Google Meet" = "Meet di Google";
|
|
|
+"Open and join quickly" = "Apri e partecipa rapidamente";
|
|
|
+"Refresh" = "Aggiorna";
|
|
|
+
|
|
|
+/* MARK: - Barra laterale e navigazione */
|
|
|
+"Planning" = "Pianificazione";
|
|
|
+"Additional" = "Aggiuntivo";
|
|
|
+"Get Premium" = "Ottieni Premium";
|
|
|
+"Manage Subscription" = "Gestisci abbonamento";
|
|
|
+"App for Google Meet" = "App per Meet di Google";
|
|
|
+
|
|
|
+/* MARK: - Partecipa a una riunione */
|
|
|
+"New Instant Meet" = "Nuova riunione istantanea";
|
|
|
+"Start instant Meet in more section with\nGoogle Meet meet." = "Avvia una riunione istantanea di Meet di Google nella sezione Altro\ncon Meet di Google.";
|
|
|
+"Join with Link" = "Partecipa con link";
|
|
|
+"Code or meet.google.com/…" = "Codice o meet.google.com/…";
|
|
|
+"Join with ID" = "Partecipa con ID";
|
|
|
+"Join with URL" = "Partecipa con URL";
|
|
|
+"Meeting URL" = "URL riunione";
|
|
|
+"Enter meeting URL..." = "Inserisci URL riunione...";
|
|
|
+"Quick Join Meeting" = "Partecipazione rapida alla riunione";
|
|
|
+"Invalid Meet link" = "Link Meet di Google non valido";
|
|
|
+"Enter a valid Google Meet link or meeting code (for example nkd-grps-duv, meet.google.com/nkd-grps-duv, or https://meet.google.com/nkd-grps-duv)." = "Inserisci un link Meet di Google o codice riunione valido (ad esempio nkd-grps-duv, meet.google.com/nkd-grps-duv o https://meet.google.com/nkd-grps-duv).";
|
|
|
+"Instant Meeting" = "Riunione istantanea";
|
|
|
+"Connect Google to start Instant Meeting" = "Collega il tuo account di Google per avviare una riunione istantanea";
|
|
|
+"To auto-stop recording when the meeting ends, connect your Google account first." = "Per interrompere automaticamente la registrazione al termine della riunione, collega prima il tuo account di Google.";
|
|
|
+"Could not create Instant Meeting" = "Impossibile creare la riunione istantanea";
|
|
|
+"Free trial used. Upgrade to continue." = "Prova gratuita utilizzata. Aggiorna per continuare.";
|
|
|
+
|
|
|
+/* MARK: - Navigare sul web */
|
|
|
+"Browse the web" = "Naviga sul web";
|
|
|
+"Enter a web address (for example meet.google.com)." = "Inserisci un indirizzo web (ad esempio meet.google.com).";
|
|
|
+"Invalid address" = "Indirizzo non valido";
|
|
|
+"Enter a valid http or https URL." = "Inserisci un URL http o https valido.";
|
|
|
+"Browse" = "Naviga";
|
|
|
+"Quick links" = "Link rapidi";
|
|
|
+"Zoom help" = "Aiuto Zoom";
|
|
|
+"https://example.com or example.com" = "https://example.com o example.com";
|
|
|
+"Enter a valid web address, for example https://example.com" = "Inserisci un indirizzo web valido, ad esempio https://example.com";
|
|
|
+"Address not allowed" = "Indirizzo non consentito";
|
|
|
+"This URL is not permitted with the current in-app browser policy (whitelist)." = "Questo URL non è consentito con l'attuale politica del browser in-app (whitelist).";
|
|
|
+"Unable to load page" = "Impossibile caricare la pagina";
|
|
|
+"Could not load this page in the in-app browser.\n\n%@" = "Impossibile caricare questa pagina nel browser in-app.\n\n%@";
|
|
|
+"Page stopped loading" = "Caricamento pagina interrotto";
|
|
|
+"Unable to open browser" = "Impossibile aprire il browser";
|
|
|
+"Unable to Open Safari" = "Impossibile aprire Safari";
|
|
|
+
|
|
|
+/* MARK: - Pianificazione e calendario */
|
|
|
+"All" = "Tutti";
|
|
|
+"Today" = "Oggi";
|
|
|
+"This week" = "Questa settimana";
|
|
|
+"This month" = "Questo mese";
|
|
|
+"Previous week" = "Settimana precedente";
|
|
|
+"Previous month" = "Mese precedente";
|
|
|
+"Custom range" = "Intervallo personalizzato";
|
|
|
+"No meetings match the selected filters." = "Nessuna riunione corrisponde ai filtri selezionati.";
|
|
|
+"Adjust the date range and tap Apply." = "Regola l'intervallo di date e tocca Applica.";
|
|
|
+"Premium required. Get Premium now to unlock Calendar." = "Premium richiesto. Ottieni Premium ora per sbloccare il Calendario.";
|
|
|
+"Premium required. Click to open paywall." = "Premium richiesto. Fai clic per aprire il paywall.";
|
|
|
+"Get Premium to see events" = "Ottieni Premium per vedere gli eventi";
|
|
|
+"Connect Google" = "Collega account di Google";
|
|
|
+"Sign in with Google first to schedule a meeting from Calendar." = "Accedi prima con account di Google per pianificare una riunione dal Calendario.";
|
|
|
+"Select date" = "Seleziona data";
|
|
|
+"Choose a date to schedule your meeting." = "Scegli una data per pianificare la tua riunione.";
|
|
|
+"Google schedule" = "Calendario di Google";
|
|
|
+"To show scheduled meetings, connect your Google account. You’ll need a Google OAuth client ID (Desktop) and a redirect URI matching the app’s callback scheme." = "Per mostrare le riunioni pianificate, collega il tuo account di Google. Avrai bisogno di un ID client OAuth di Google (Desktop) e un URI di reindirizzamento che corrisponda allo schema di callback dell'app.";
|
|
|
+"Actions" = "Azioni";
|
|
|
+"Schedule meeting" = "Pianifica riunione";
|
|
|
+"Team sync" = "Sincronizzazione team";
|
|
|
+"Duration (min)" = "Durata (min)";
|
|
|
+"Refresh saved meetings" = "Aggiorna riunioni salvate";
|
|
|
+
|
|
|
+/* MARK: - Impostazioni */
|
|
|
+"Manage appearance, account, and app options." = "Gestisci aspetto, account e opzioni dell'app.";
|
|
|
+"Appearance" = "Aspetto";
|
|
|
+"Account" = "Account";
|
|
|
+"App" = "App";
|
|
|
+"Notifications" = "Notifiche";
|
|
|
+"Help & Legal" = "Aiuto e Note legali";
|
|
|
+"Dark Mode" = "Modalità scura";
|
|
|
+"Language" = "Lingua";
|
|
|
+"System Language" = "Lingua di sistema";
|
|
|
+"Rate Us" = "Valutaci";
|
|
|
+"Share App" = "Condividi app";
|
|
|
+"Upgrade" = "Aggiorna";
|
|
|
+"Privacy Policy" = "Informativa sulla privacy";
|
|
|
+"Support" = "Supporto";
|
|
|
+"Terms of Services" = "Termini di servizio";
|
|
|
+"AI Language 1" = "Lingua IA 1";
|
|
|
+"AI Language 2" = "Lingua IA 2";
|
|
|
+"Google account connected" = "Account di Google connesso";
|
|
|
+"Google account not connected" = "Account di Google non connesso";
|
|
|
+"Signed in" = "Accesso effettuato";
|
|
|
+"Sign in to sync your meetings and calendar." = "Accedi per sincronizzare riunioni e calendario.";
|
|
|
+"Log out" = "Disconnetti";
|
|
|
+"Check out %@ for managing and joining meetings." = "Prova %@ per gestire e partecipare alle riunioni.";
|
|
|
+"Meetings App" = "App Riunioni";
|
|
|
+
|
|
|
+/* MARK: - Consenso alla registrazione */
|
|
|
+"Record this meeting locally?" = "Registrare questa riunione localmente?";
|
|
|
+"With your consent, the app will record meeting audio on this Mac and show it in AI Companion after the meeting." = "Con il tuo consenso, l'app registrerà l'audio della riunione su questo Mac e lo mostrerà nell'Assistente IA dopo la riunione.";
|
|
|
+"Allow and Continue" = "Consenti e continua";
|
|
|
+"Continue Without Recording" = "Continua senza registrare";
|
|
|
+"Transcription Languages" = "Lingue di trascrizione";
|
|
|
+"Preferred Language 1" = "Lingua preferita 1";
|
|
|
+"Preferred Language 2" = "Lingua preferita 2";
|
|
|
+"Microphone permission denied" = "Autorizzazione microfono negata";
|
|
|
+"Microphone permission required" = "Autorizzazione microfono richiesta";
|
|
|
+"Enable microphone access in System Settings to record meetings locally." = "Abilita l'accesso al microfono nelle Impostazioni di Sistema per registrare le riunioni localmente.";
|
|
|
+"Could not start recording" = "Impossibile avviare la registrazione";
|
|
|
+"Recording will start when the meeting starts" = "La registrazione inizierà all'avvio della riunione";
|
|
|
+"Meeting recording started (meeting + microphone)" = "Registrazione riunione avviata (riunione + microfono)";
|
|
|
+"System audio unavailable. Recording microphone only." = "Audio di sistema non disponibile. Registrazione solo microfono.";
|
|
|
+"Meeting recording started (microphone only)" = "Registrazione riunione avviata (solo microfono)";
|
|
|
+"Meeting recording saved" = "Registrazione riunione salvata";
|
|
|
+
|
|
|
+/* MARK: - Assistente IA */
|
|
|
+"Get notes from your previous meetings" = "Ottieni note dalle tue riunioni precedenti";
|
|
|
+"Connect your Google account to see your AI Companion meeting history." = "Collega il tuo account di Google per vedere la cronologia delle riunioni del tuo Assistente IA.";
|
|
|
+"No previous meetings yet for %@. End a meeting to save it here and generate notes." = "Ancora nessuna riunione precedente per %@. Termina una riunione per salvarla qui e generare note.";
|
|
|
+"this account" = "questo account";
|
|
|
+"Previous meetings" = "Riunioni precedenti";
|
|
|
+"Recording in progress: %@" = "Registrazione in corso: %@";
|
|
|
+"Started: %@" = "Avviato: %@";
|
|
|
+"Stop Recording" = "Ferma registrazione";
|
|
|
+"Date: %@" = "Data: %@";
|
|
|
+"Saved time: %@" = "Ora salvata: %@";
|
|
|
+"Get Notes" = "Ottieni note";
|
|
|
+"Premium required. Click to unlock AI Companion notes." = "Premium richiesto. Fai clic per sbloccare le note dell'Assistente IA.";
|
|
|
+"Play Audio" = "Riproduci audio";
|
|
|
+"Pause Audio" = "Metti in pausa audio";
|
|
|
+"Stopped" = "Fermato";
|
|
|
+"Speaking..." = "In riproduzione...";
|
|
|
+"Paused" = "In pausa";
|
|
|
+"Playing..." = "In riproduzione...";
|
|
|
+"Not playing" = "Non in riproduzione";
|
|
|
+"Checking audio..." = "Controllo audio...";
|
|
|
+"Audio file missing" = "File audio mancante";
|
|
|
+"Could not play recording" = "Impossibile riprodurre la registrazione";
|
|
|
+"Failed: %@" = "Fallito: %@";
|
|
|
+"Failed to play audio" = "Riproduzione audio fallita";
|
|
|
+"decode error" = "errore di decodifica";
|
|
|
+"Loading..." = "Caricamento...";
|
|
|
+"Buffering..." = "Buffering...";
|
|
|
+"Finished" = "Completato";
|
|
|
+"Transcript not requested" = "Trascrizione non richiesta";
|
|
|
+"Transcript processing..." = "Elaborazione trascrizione...";
|
|
|
+"Transcript ready" = "Trascrizione pronta";
|
|
|
+"Transcript unavailable (tap to retry)" = "Trascrizione non disponibile (tocca per riprovare)";
|
|
|
+"Notes not requested" = "Note non richieste";
|
|
|
+"Preparing notes, please wait..." = "Preparazione note, attendere...";
|
|
|
+"Notes ready" = "Note pronte";
|
|
|
+"Notes unavailable (tap to retry)" = "Note non disponibili (tocca per riprovare)";
|
|
|
+"Transcript unavailable" = "Trascrizione non disponibile";
|
|
|
+"Notes unavailable" = "Note non disponibili";
|
|
|
+"Could not find recording details for this meeting." = "Impossibile trovare i dettagli di registrazione per questa riunione.";
|
|
|
+"Transcript - %@" = "Trascrizione - %@";
|
|
|
+"Notes - %@" = "Note - %@";
|
|
|
+"Meeting Notes" = "Note riunione";
|
|
|
+
|
|
|
+/* MARK: - Paywall e StoreKit */
|
|
|
+"Meetings Pro" = "Riunioni Pro";
|
|
|
+"PREMIUM EXPERIENCE" = "ESPERIENZA PREMIUM";
|
|
|
+"Elevate your meetings workflow" = "Eleva il tuo flusso di lavoro delle riunioni";
|
|
|
+"Unlock automation, premium meeting tools, and priority support for every session." = "Sblocca automazione, strumenti premium per riunioni e supporto prioritario per ogni sessione.";
|
|
|
+"Manage meetings" = "Gestisci riunioni";
|
|
|
+"Smart scheduling" = "Pianificazione intelligente";
|
|
|
+"Faster workflow" = "Flusso di lavoro più veloce";
|
|
|
+"Reminder notifications" = "Notifiche promemoria";
|
|
|
+"Monthly" = "Mensile";
|
|
|
+"Bi Yearly" = "Semestrale";
|
|
|
+"Yearly" = "Annuale";
|
|
|
+"Most Popular" = "Più popolare";
|
|
|
+"%@ • Most Popular" = "%@ • Più popolare";
|
|
|
+"3 days free trial" = "3 giorni di prova gratuita";
|
|
|
+"Cancel anytime" = "Annulla in qualsiasi momento";
|
|
|
+"No lock-in" = "Nessun vincolo";
|
|
|
+"Instant access" = "Accesso immediato";
|
|
|
+"Unlock all tools" = "Sblocca tutti gli strumenti";
|
|
|
+"Secure billing" = "Fatturazione sicura";
|
|
|
+"Handled by Apple" = "Gestito da Apple";
|
|
|
+"Secured by Apple. Cancel anytime." = "Protetto da Apple. Annulla in qualsiasi momento.";
|
|
|
+"Restore Purchase" = "Ripristina acquisto";
|
|
|
+"Continue with free plan" = "Continua con il piano gratuito";
|
|
|
+"Already Premium" = "Già Premium";
|
|
|
+"You are already premium. Do you want to continue with this purchase?" = "Sei già premium. Vuoi continuare con questo acquisto?";
|
|
|
+"Current plan: %@. Choose a different package to switch." = "Piano attuale: %@. Scegli un pacchetto diverso per cambiare.";
|
|
|
+"Premium is active on this Apple ID." = "Premium è attivo su questo ID Apple.";
|
|
|
+"Free for %@, then %@" = "Gratis per %@, poi %@";
|
|
|
+"Billed via App Store" = "Fatturato tramite App Store";
|
|
|
+"%@ • %@" = "%@ • %@";
|
|
|
+"Save 0%" = "Risparmia 0%";
|
|
|
+"Save %@%%" = "Risparmia %@%%";
|
|
|
+"month" = "mese";
|
|
|
+"year" = "anno";
|
|
|
+"%@ free trial" = "%@ prova gratuita";
|
|
|
+"Processing..." = "Elaborazione...";
|
|
|
+"Premium Active" = "Premium attivo";
|
|
|
+"Continue with 3 day trail" = "Continua con 3 giorni di prova";
|
|
|
+"Please Wait" = "Attendere";
|
|
|
+"A purchase is already being processed." = "Un acquisto è già in fase di elaborazione.";
|
|
|
+"This Apple ID already has premium access." = "Questo ID Apple ha già accesso premium.";
|
|
|
+"Purchase Complete" = "Acquisto completato";
|
|
|
+"Premium has been unlocked successfully." = "Premium sbloccato con successo.";
|
|
|
+"Purchase Pending" = "Acquisto in sospeso";
|
|
|
+"Your purchase is pending approval. You can continue once it completes." = "Il tuo acquisto è in attesa di approvazione. Puoi continuare una volta completato.";
|
|
|
+"Product Not Available" = "Prodotto non disponibile";
|
|
|
+"Unable to load this product. Check your StoreKit configuration and product IDs." = "Impossibile caricare questo prodotto. Controlla la configurazione StoreKit e gli ID prodotto.";
|
|
|
+"Already Purchased" = "Già acquistato";
|
|
|
+"This plan is already active on your Apple ID." = "Questo piano è già attivo sul tuo ID Apple.";
|
|
|
+"Purchase Failed" = "Acquisto fallito";
|
|
|
+"Restore Purchases" = "Ripristina acquisti";
|
|
|
+"Purchases restored successfully." = "Acquisti ripristinati con successo.";
|
|
|
+"No previous premium purchase was found for this Apple ID." = "Nessun acquisto premium precedente trovato per questo ID Apple.";
|
|
|
+"Restore failed: %@" = "Ripristino fallito: %@";
|
|
|
+"Unable to Open Subscriptions" = "Impossibile aprire Abbonamenti";
|
|
|
+"The subscriptions URL is invalid." = "L'URL degli abbonamenti non è valido.";
|
|
|
+"%@ tapped." = "%@ toccato.";
|
|
|
+
|
|
|
+/* MARK: - Autenticazione */
|
|
|
+"Google Sign-In" = "Accesso con account di Google";
|
|
|
+
|
|
|
+/* MARK: - Errori di riconoscimento vocale/trascrizione */
|
|
|
+"Speech recognition permission denied. Enable it in System Settings and try again." = "Autorizzazione riconoscimento vocale negata. Abilitala nelle Impostazioni di Sistema e riprova.";
|
|
|
+"Speech recognition is restricted on this Mac." = "Il riconoscimento vocale è limitato su questo Mac.";
|
|
|
+"Speech recognition authorization is unavailable." = "L'autorizzazione al riconoscimento vocale non è disponibile.";
|
|
|
+"Speech recognizer is unavailable for the current locale." = "Il riconoscitore vocale non è disponibile per la lingua corrente.";
|
|
|
+"Speech recognizer is unavailable for %@." = "Il riconoscitore vocale non è disponibile per %@.";
|
|
|
+"No audio was available to transcribe." = "Nessun audio disponibile per la trascrizione.";
|
|
|
+
|
|
|
+/* MARK: - Errori di transazione StoreKit */
|
|
|
+"Unable to load products: %@" = "Impossibile caricare i prodotti: %@";
|
|
|
+"Product ID not found in StoreKit response. Requested: %@. Loaded IDs: %@" = "ID prodotto non trovato nella risposta StoreKit. Richiesto: %@. ID caricati: %@";
|
|
|
+"Purchase verification failed." = "Verifica acquisto fallita.";
|
|
|
+"Unknown purchase state." = "Stato acquisto sconosciuto.";
|
|
|
+"none" = "nessuno";
|
|
|
+
|
|
|
+/* MARK: - Testi prezzi paywall */
|
|
|
+"%@ one-time purchase" = "%@ acquisto una tantum";
|
|
|
+"%@/month" = "%@/mese";
|
|
|
+"%@/6 months" = "%@/6 mesi";
|
|
|
+"%@/year (3 days free trial)" = "%@/anno (3 giorni di prova gratuita)";
|
|
|
+"day" = "giorno";
|
|
|
+"week" = "settimana";
|
|
|
+"period" = "periodo";
|
|
|
+"1 %@" = "1 %@";
|
|
|
+"%d %@s" = "%d %@";
|
|
|
+
|
|
|
+/* MARK: - Toast e feedback rapido */
|
|
|
+"Meeting added successfully." = "Riunione aggiunta con successo.";
|
|
|
+"An issue occurred. Please try again." = "Si è verificato un problema. Riprova.";
|
|
|
+"Failed to load transcript." = "Caricamento trascrizione fallito.";
|
|
|
+"Failed to generate notes." = "Generazione note fallita.";
|
|
|
+
|
|
|
+/* MARK: - Avvisi del browser */
|
|
|
+"Try Again" = "Riprova";
|
|
|
+"The in-app browser closed this page unexpectedly. You can try loading it again in this same window." = "Il browser in-app ha chiuso questa pagina inaspettatamente. Puoi provare a caricarla di nuovo in questa stessa finestra.";
|
|
|
+
|
|
|
+/* MARK: - Errori di pianificazione e calendario */
|
|
|
+"Couldn't load schedule." = "Impossibile caricare il programma.";
|
|
|
+"Couldn't refresh schedule." = "Impossibile aggiornare il programma.";
|
|
|
+"Couldn't connect Google account." = "Impossibile connettere l'account di Google.";
|
|
|
+"Couldn't logout Google account." = "Impossibile disconnettersi dall'account di Google.";
|
|
|
+"Couldn't load schedule" = "Impossibile caricare il programma";
|
|
|
+"Couldn't determine Meet meeting code from URL." = "Impossibile determinare il codice riunione di Meet di Google dall'URL.";
|
|
|
+"Refreshing…" = "Aggiornamento…";
|
|
|
+"Connect Google to see meetings" = "Collega account di Google per vedere le riunioni";
|
|
|
+"Connect to load schedule" = "Connetti per caricare il programma";
|
|
|
+"Loading…" = "Caricamento…";
|
|
|
+"Loading schedule…" = "Caricamento programma…";
|
|
|
+"Start date must be on or before end date." = "La data di inizio deve essere uguale o precedente alla data di fine.";
|
|
|
+"Invalid custom date range" = "Intervallo di date personalizzato non valido";
|
|
|
+"No meetings" = "Nessuna riunione";
|
|
|
+"No meetings for selected filters" = "Nessuna riunione per i filtri selezionati";
|
|
|
+"No meetings on %@" = "Nessuna riunione il %@";
|
|
|
+"1 meeting on %@" = "1 riunione il %@";
|
|
|
+"%d meetings on %@" = "%d riunioni il %@";
|
|
|
+"All day" = "Tutto il giorno";
|
|
|
+"Duration: all day" = "Durata: tutto il giorno";
|
|
|
+"Duration: %dh %dm" = "Durata: %dh %dm";
|
|
|
+"Duration: %dh" = "Durata: %dh";
|
|
|
+"Duration: %dm" = "Durata: %dm";
|
|
|
+"%@ - %@" = "%@ - %@";
|
|
|
+"Scheduled Meeting" = "Riunione pianificata";
|
|
|
+
|
|
|
+/* MARK: - Finestra creazione riunione */
|
|
|
+"Please enter a title." = "Inserisci un titolo.";
|
|
|
+"Duration must be a positive number of minutes." = "La durata deve essere un numero positivo di minuti.";
|
|
|
+"Invalid start time." = "Ora di inizio non valida.";
|
|
|
+
|
|
|
+/* MARK: - Promemoria e notifiche */
|
|
|
+"Reminders" = "Promemoria";
|
|
|
+"1 Day Before" = "1 giorno prima";
|
|
|
+"12 Hours Before" = "12 ore prima";
|
|
|
+"1 Hour Before" = "1 ora prima";
|
|
|
+"Starts in 1 day" = "Inizia tra 1 giorno";
|
|
|
+"Starts in 12 hours" = "Inizia tra 12 ore";
|
|
|
+"Starts in 1 hour" = "Inizia tra 1 ora";
|
|
|
+
|
|
|
+/* MARK: - Errori OAuth di Google */
|
|
|
+"Missing Google OAuth Client ID." = "ID client OAuth di Google mancante.";
|
|
|
+"Missing Google OAuth Client Secret." = "Segreto client OAuth di Google mancante.";
|
|
|
+"Invalid OAuth callback URL." = "URL di callback OAuth non valido.";
|
|
|
+"Google did not return an authorization code." = "L'account di Google non ha restituito un codice di autorizzazione.";
|
|
|
+"Token exchange failed: %@" = "Scambio token fallito: %@";
|
|
|
+"Could not open browser for Google sign-in." = "Impossibile aprire il browser per l'accesso con account di Google.";
|
|
|
+"Google sign-in timed out." = "Accesso con account di Google scaduto.";
|
|
|
+"No stored Google tokens found." = "Nessun token dell'account di Google memorizzato trovato.";
|
|
|
+
|
|
|
+/* MARK: - Errori Assistente IA/trascrizione */
|
|
|
+"Recording not found." = "Registrazione non trovata.";
|
|
|
+"Local meeting audio is missing." = "Audio riunione locale mancante.";
|
|
|
+"Generated transcript was empty." = "La trascrizione generata era vuota.";
|
|
|
+"(No transcript entries found.)" = "(Nessuna voce di trascrizione trovata.)";
|
|
|
+"No conference record found for this meeting." = "Nessun record di conferenza trovato per questa riunione.";
|
|
|
+"No transcript found for this meeting." = "Nessuna trascrizione trovata per questa riunione.";
|
|
|
+"Unable to create audio composition tracks." = "Impossibile creare tracce di composizione audio.";
|
|
|
+"Unable to create audio export session." = "Impossibile creare la sessione di esportazione audio.";
|
|
|
+"Audio mix export failed." = "Esportazione mix audio fallita.";
|
|
|
+"No display available for system audio capture." = "Nessun display disponibile per l'acquisizione audio di sistema.";
|
|
|
+"Cannot add audio writer input." = "Impossibile aggiungere l'input dello scrittore audio.";
|
|
|
+
|
|
|
+/* MARK: - Errori API di Google */
|
|
|
+"Google Meet returned an invalid response." = "Meet di Google ha restituito una risposta non valida.";
|
|
|
+"Google Meet API error (%d): %@" = "Errore API Meet di Google (%d): %@";
|
|
|
+"Failed to parse Google Meet response: %@" = "Analisi risposta Meet di Google fallita: %@";
|
|
|
+"Google Calendar returned an invalid response." = "Calendario di Google ha restituito una risposta non valida.";
|
|
|
+"Google Calendar API error (%d): %@" = "Errore API Calendario di Google (%d): %@";
|
|
|
+"Failed to parse Google Calendar events: %@" = "Analisi eventi Calendario di Google fallita: %@";
|
|
|
+
|
|
|
+/* MARK: - Errori OpenAI */
|
|
|
+"OpenAI API key is missing. Set OPENAI_API_KEY in the environment or app key vault." = "Chiave API OpenAI mancante. Imposta OPENAI_API_KEY nell'ambiente o nel deposito chiavi dell'app.";
|
|
|
+"Notes generation returned an invalid response." = "La generazione delle note ha restituito una risposta non valida.";
|
|
|
+"Notes generation failed (%d): %@" = "Generazione note fallita (%d): %@";
|
|
|
+"Notes generation returned empty text." = "La generazione delle note ha restituito testo vuoto.";
|
|
|
+"OpenAI transcription returned an invalid response." = "La trascrizione OpenAI ha restituito una risposta non valida.";
|
|
|
+"OpenAI transcription failed (%d): %@" = "Trascrizione OpenAI fallita (%d): %@";
|
|
|
+"OpenAI transcription returned no text." = "La trascrizione OpenAI non ha restituito testo.";
|
|
|
+
|
|
|
+/* MARK: - Navigazione e browser in-app */
|
|
|
+"Open sites in the in-app browser (back, forward, reload, address bar). OAuth and “Continue in browser” flows stay inside the app." = "Apri i siti nel browser in-app (indietro, avanti, ricarica, barra degli indirizzi). I flussi OAuth e «Continua nel browser» rimangono all'interno dell'app.";
|
|
|
+"Open in app browser" = "Apri nel browser dell'app";
|
|
|
+"Meet help" = "Aiuto Meet di Google";
|
|
|
+"Go" = "Vai";
|
|
|
+"Back" = "Indietro";
|
|
|
+"Forward" = "Avanti";
|
|
|
+"Reload" = "Ricarica";
|
|
|
+
|
|
|
+/* MARK: - Etichette calendario e pianificazione */
|
|
|
+"Google Calendar" = "Calendario di Google";
|
|
|
+"Untitled meeting" = "Riunione senza titolo";
|
|
|
+"Created event missing start/end." = "Evento creato senza inizio/fine.";
|
|
|
+"Created event missing Meet/HTML link." = "Evento creato senza link Meet di Google/HTML.";
|
|
|
+
|
|
|
+/* MARK: - Account di Google */
|
|
|
+"Google account" = "Account di Google";
|
|
|
+"%@, Google account" = "%@, account di Google";
|
|
|
+"Google User" = "Utente di Google";
|
|
|
+
|
|
|
+/* MARK: - Partecipazione a Zoom (parti non utilizzate) */
|
|
|
+"Meeting ID" = "ID riunione";
|
|
|
+"Enter meeting ID..." = "Inserisci ID riunione...";
|
|
|
+"Meeting Passcode" = "Codice di accesso riunione";
|
|
|
+"Enter meeting passcode..." = "Inserisci codice di accesso riunione...";
|
|
|
+
|
|
|
+/* MARK: - Paywall (vantaggi alternativi) */
|
|
|
+"Virtual backgrounds" = "Sfondi virtuali";
|
|
|
+"Tools for productivity" = "Strumenti per la produttività";
|
|
|
+"24/7 support" = "Supporto 24/7";
|
|
|
+
|
|
|
+/* MARK: - Relatori della trascrizione */
|
|
|
+"You" = "Tu";
|
|
|
+
|
|
|
+/* MARK: - Errori Portachiavi */
|
|
|
+"Failed to read OAuth tokens from Keychain." = "Lettura token OAuth dal Portachiavi fallita.";
|
|
|
+"Keychain returned an invalid token payload." = "Il Portachiavi ha restituito un payload token non valido.";
|
|
|
+"Failed to update OAuth tokens in Keychain." = "Aggiornamento token OAuth nel Portachiavi fallito.";
|
|
|
+"Failed to save OAuth tokens to Keychain." = "Salvataggio token OAuth nel Portachiavi fallito.";
|
|
|
+"Failed to delete OAuth tokens from Keychain." = "Eliminazione token OAuth dal Portachiavi fallita.";
|
|
|
+"Unable to allocate audio buffer." = "Impossibile allocare il buffer audio.";
|
|
|
+"Invalid revoke response." = "Risposta di revoca non valida.";
|
|
|
+"Token revoke failed with status %d." = "Revoca token fallita con stato %d.";
|
|
|
+
|
|
|
+/* MARK: - Diagnostica errori */
|
|
|
+"Keychain: %d (%@)" = "Portachiavi: %d (%@)";
|
|
|
+"OSStatus: %d" = "OSStatus: %d";
|
|
|
+"Item: service=%@, account=%@" = "Elemento: servizio=%@, account=%@";
|