Files
TREK/shared/src/i18n/it/admin.ts
T
Maurice a876fb2634 feat: Passkey (WebAuthn) login (#1111)
* feat(auth): passkey (WebAuthn) login — server endpoints, schema + admin toggle

Add @simplewebauthn/server registration and primary (discoverable) login ceremonies under /api/auth/passkey, a webauthn_credentials + single-use webauthn_challenges schema (migration), the instance-wide passkey_login toggle (default off) enforced before auth by a guard, and require_mfa satisfaction via a verified passkey. RP ID/origin come only from server config (webauthn_rp_id/origins -> APP_URL), never request headers.

* feat(auth): passkey enrolment, login button + admin settings UI

PasskeysSection in account settings (add/rename/remove with a current-password step-up), a 'Sign in with a passkey' button on the login page, the admin enable + RP-ID/origins controls, and a per-user admin reset action.

* i18n(auth): passkey strings across all locales

Add login/settings/admin passkey keys to en and all 19 translated locales.
2026-06-05 18:54:13 +02:00

389 lines
21 KiB
TypeScript

import type { TranslationStrings } from '../types';
const admin: TranslationStrings = {
'admin.notifications.title': 'Notifiche',
'admin.notifications.hint':
'Scegli un canale di notifica. Solo uno può essere attivo alla volta.',
'admin.notifications.none': 'Disattivato',
'admin.notifications.email': 'E-mail (SMTP)',
'admin.notifications.webhook': 'Webhook',
'admin.notifications.save': 'Salva impostazioni notifiche',
'admin.notifications.saved': 'Impostazioni notifiche salvate',
'admin.notifications.testWebhook': 'Invia webhook di test',
'admin.notifications.testWebhookSuccess':
'Webhook di test inviato con successo',
'admin.notifications.testWebhookFailed': 'Invio webhook di test fallito',
'admin.smtp.title': 'Email e notifiche',
'admin.smtp.hint':
"Configurazione SMTP per l'invio delle notifiche via e-mail.",
'admin.smtp.testButton': 'Invia email di prova',
'admin.webhook.hint':
'Invia notifiche a un webhook esterno (Discord, Slack, ecc.).',
'admin.smtp.testSuccess': 'Email di prova inviata con successo',
'admin.smtp.testFailed': 'Invio email di prova fallito',
'admin.title': 'Amministrazione',
'admin.subtitle': 'Gestione utenti e impostazioni di sistema',
'admin.tabs.users': 'Utenti',
'admin.tabs.categories': 'Categorie',
'admin.tabs.backup': 'Backup',
'admin.stats.users': 'Utenti',
'admin.stats.trips': 'Viaggi',
'admin.stats.places': 'Luoghi',
'admin.stats.photos': 'Foto',
'admin.stats.files': 'File',
'admin.table.user': 'Utente',
'admin.table.email': 'Email',
'admin.table.role': 'Ruolo',
'admin.table.created': 'Creato',
'admin.table.lastLogin': 'Ultimo Accesso',
'admin.table.actions': 'Azioni',
'admin.you': '(Tu)',
'admin.editUser': 'Modifica Utente',
'admin.newPassword': 'Nuova Password',
'admin.newPasswordHint': 'Lascia vuoto per mantenere la password attuale',
'admin.deleteUser':
'Eliminare l\'utente "{name}"? Tutti i viaggi verranno eliminati in modo permanente.',
'admin.deleteUserTitle': 'Elimina utente',
'admin.newPasswordPlaceholder': 'Inserisci nuova password…',
'admin.toast.loadError': 'Impossibile caricare i dati di amministrazione',
'admin.toast.userUpdated': 'Utente aggiornato',
'admin.toast.updateError': 'Impossibile aggiornare',
'admin.toast.userDeleted': 'Utente eliminato',
'admin.toast.deleteError': 'Impossibile eliminare',
'admin.toast.cannotDeleteSelf': 'Impossibile eliminare il proprio account',
'admin.toast.userCreated': 'Utente creato',
'admin.toast.createError': "Impossibile creare l'utente",
'admin.toast.fieldsRequired': 'Username, email e password sono obbligatori',
'admin.createUser': 'Crea Utente',
'admin.invite.title': 'Link di Invito',
'admin.invite.subtitle': 'Crea link di registrazione monouso',
'admin.invite.create': 'Crea Link',
'admin.invite.createAndCopy': 'Crea & Copia',
'admin.invite.empty': 'Nessun link di invito ancora creato',
'admin.invite.maxUses': 'Usi Max.',
'admin.invite.expiry': 'Scade tra',
'admin.invite.uses': 'usato',
'admin.invite.expiresAt': 'scade',
'admin.invite.createdBy': 'da',
'admin.invite.active': 'Attivo',
'admin.invite.expired': 'Scaduto',
'admin.invite.usedUp': 'Esaurito',
'admin.invite.copied': 'Link di invito copiato negli appunti',
'admin.invite.copyLink': 'Copia link',
'admin.invite.deleted': 'Link di invito eliminato',
'admin.invite.createError': 'Impossibile creare il link di invito',
'admin.invite.deleteError': 'Impossibile eliminare il link di invito',
'admin.tabs.settings': 'Impostazioni',
'admin.allowRegistration': 'Consenti Registrazione',
'admin.allowRegistrationHint':
'I nuovi utenti possono registrarsi autonomamente',
'admin.authMethods': 'Authentication Methods',
'admin.passwordLogin': 'Password Login',
'admin.passwordLoginHint': 'Allow users to sign in with email and password',
'admin.passwordRegistration': 'Password Registration',
'admin.passwordRegistrationHint':
'Allow new users to register with email and password',
'admin.oidcLogin': 'SSO Login',
'admin.oidcLoginHint': 'Allow users to sign in with SSO',
'admin.oidcRegistration': 'SSO Auto-Provisioning',
'admin.oidcRegistrationHint':
'Automatically create accounts for new SSO users',
'admin.envOverrideHint':
'Password login settings are controlled by the OIDC_ONLY environment variable and cannot be changed here.',
'admin.lockoutWarning': 'At least one login method must remain enabled',
'admin.requireMfa': 'Richiedi autenticazione a due fattori (2FA)',
'admin.requireMfaHint':
"Gli utenti senza 2FA devono completare la configurazione in Impostazioni prima di usare l'app.",
'admin.apiKeys': 'Chiavi API',
'admin.apiKeysHint':
'Opzionale. Abilita dati estesi per i luoghi come foto e meteo.',
'admin.mapsKey': 'Chiave API Google Maps',
'admin.mapsKeyHint':
'Richiesta per la ricerca dei luoghi. Ottienila su console.cloud.google.com',
'admin.mapsKeyHintLong':
'Senza una chiave API, OpenStreetMap viene utilizzato per la ricerca dei luoghi. Con una chiave API di Google, è possibile caricare anche foto, valutazioni e orari di apertura. Ottienine una su console.cloud.google.com.',
'admin.recommended': 'Consigliato',
'admin.weatherKey': 'Chiave API OpenWeatherMap',
'admin.weatherKeyHint': 'Per i dati meteo. Gratuita su openweathermap.org',
'admin.validateKey': 'Testa',
'admin.keyValid': 'Connessa',
'admin.keyInvalid': 'Non valida',
'admin.keySaved': 'Chiavi API salvate',
'admin.oidcTitle': 'Single Sign-On (OIDC)',
'admin.oidcSubtitle':
"Consenti l'accesso tramite provider esterni come Google, Apple, Authentik o Keycloak.",
'admin.oidcDisplayName': 'Nome Visualizzato',
'admin.oidcIssuer': 'URL Emittente',
'admin.oidcIssuerHint':
"L'URL dell'Emittente OpenID Connect del provider. es. https://accounts.google.com",
'admin.oidcSaved': 'Configurazione OIDC salvata',
'admin.oidcOnlyMode': 'Disabilita autenticazione con password',
'admin.oidcOnlyModeHint':
"Se abilitato, è consentito solo l'accesso SSO. L'accesso basato su password e la registrazione sono bloccati.",
'admin.fileTypes': 'Tipi di File Consentiti',
'admin.fileTypesHint':
'Configura quali tipi di file gli utenti possono caricare.',
'admin.fileTypesFormat':
'Estensioni separate da virgola (es. jpg,png,pdf,doc). Usa * per consentire tutti i tipi.',
'admin.fileTypesSaved': 'Impostazioni dei tipi di file salvate',
'admin.placesPhotos.title': 'Foto dei luoghi',
'admin.placesPhotos.subtitle':
"Recupera le foto dall'API Google Places. Disabilita per risparmiare la quota API. Le foto di Wikimedia non sono interessate.",
'admin.placesAutocomplete.title': 'Completamento automatico dei luoghi',
'admin.placesAutocomplete.subtitle':
"Utilizza l'API Google Places per i suggerimenti di ricerca. Disabilita per risparmiare la quota API.",
'admin.placesDetails.title': 'Dettagli del luogo',
'admin.placesDetails.subtitle':
"Recupera informazioni dettagliate sul luogo (orari, valutazione, sito web) dall'API Google Places. Disabilita per risparmiare la quota API.",
'admin.bagTracking.title': 'Tracciamento valigia',
'admin.bagTracking.subtitle':
"Abilita il peso e l'assegnazione della valigia per gli elementi della lista valigia",
'admin.collab.chat.title': 'Chat',
'admin.collab.chat.subtitle':
'Messaggistica in tempo reale per la collaborazione',
'admin.collab.notes.title': 'Note',
'admin.collab.notes.subtitle': 'Note e documenti condivisi',
'admin.collab.polls.title': 'Sondaggi',
'admin.collab.polls.subtitle': 'Sondaggi e votazioni di gruppo',
'admin.collab.whatsnext.title': 'Prossimi passi',
'admin.collab.whatsnext.subtitle': 'Suggerimenti attività e prossimi passi',
'admin.tabs.config': 'Personalizzazione',
'admin.tabs.defaults': 'Impostazioni predefinite',
'admin.defaultSettings.title': 'Impostazioni predefinite utente',
'admin.defaultSettings.description':
"Imposta i valori predefiniti per l'intera istanza. Gli utenti che non hanno modificato un'impostazione vedranno questi valori. Le loro modifiche hanno sempre la priorità.",
'admin.defaultSettings.saved': 'Predefinito salvato',
'admin.defaultSettings.reset': 'Ripristina il predefinito integrato',
'admin.defaultSettings.resetToBuiltIn': 'ripristina',
'admin.tabs.templates': 'Modelli lista valigia',
'admin.packingTemplates.title': 'Modelli lista valigia',
'admin.packingTemplates.subtitle':
'Crea liste valigia riutilizzabili per i tuoi viaggi',
'admin.packingTemplates.create': 'Nuovo modello',
'admin.packingTemplates.namePlaceholder':
'Nome modello (es. Vacanza al mare)',
'admin.packingTemplates.empty': 'Ancora nessun modello creato',
'admin.packingTemplates.items': 'elementi',
'admin.packingTemplates.categories': 'categorie',
'admin.packingTemplates.itemName': 'Nome elemento',
'admin.packingTemplates.itemCategory': 'Categoria',
'admin.packingTemplates.categoryName': 'Nome categoria (es. Abbigliamento)',
'admin.packingTemplates.addCategory': 'Aggiungi categoria',
'admin.packingTemplates.created': 'Modello creato',
'admin.packingTemplates.deleted': 'Modello eliminato',
'admin.packingTemplates.loadError': 'Impossibile caricare i modelli',
'admin.packingTemplates.createError': 'Impossibile creare il modello',
'admin.packingTemplates.deleteError': 'Impossibile eliminare il modello',
'admin.packingTemplates.saveError': 'Impossibile salvare',
'admin.tabs.addons': 'Moduli',
'admin.addons.title': 'Moduli',
'admin.addons.subtitle':
'Abilita o disabilita le funzionalità per personalizzare la tua esperienza TREK.',
'admin.addons.catalog.packing.name': 'Liste',
'admin.addons.catalog.packing.description':
'Liste di imballaggio e attività da svolgere per i tuoi viaggi',
'admin.addons.catalog.budget.name': 'Budget',
'admin.addons.catalog.budget.description':
'Tieni traccia delle spese e pianifica il budget del tuo viaggio',
'admin.addons.catalog.documents.name': 'Documenti',
'admin.addons.catalog.documents.description':
'Archivia e gestisci i documenti di viaggio',
'admin.addons.catalog.vacay.name': 'Ferie',
'admin.addons.catalog.vacay.description':
'Pianificatore personale delle ferie con vista calendario',
'admin.addons.catalog.atlas.name': 'Atlante',
'admin.addons.catalog.atlas.description':
'Mappa del mondo con paesi visitati e statistiche di viaggio',
'admin.addons.catalog.collab.name': 'Collaborazione',
'admin.addons.catalog.collab.description':
'Note, sondaggi e chat in tempo reale per la pianificazione del viaggio',
'admin.addons.catalog.memories.name': 'Foto (Immich)',
'admin.addons.catalog.memories.description':
'Condividi le foto del viaggio tramite la tua istanza Immich',
'admin.addons.catalog.mcp.name': 'MCP',
'admin.addons.catalog.mcp.description':
"Model Context Protocol per l'integrazione di assistenti AI",
'admin.addons.subtitleBefore':
'Abilita o disabilita le funzionalità per personalizzare la tua ',
'admin.addons.subtitleAfter': ' esperienza.',
'admin.addons.enabled': 'Abilitato',
'admin.addons.disabled': 'Disabilitato',
'admin.addons.type.trip': 'Viaggio',
'admin.addons.type.global': 'Globale',
'admin.addons.type.integration': 'Integrazione',
'admin.addons.tripHint':
"Disponibile come scheda all'interno di ciascun viaggio",
'admin.addons.globalHint':
'Disponibile come sezione autonoma nella navigazione principale',
'admin.addons.integrationHint':
'Servizi backend e integrazioni API senza pagina dedicata',
'admin.addons.toast.updated': 'Modulo aggiornato',
'admin.addons.toast.error': 'Impossibile aggiornare il modulo',
'admin.addons.noAddons': 'Nessun modulo disponibile',
'admin.weather.title': 'Dati meteo',
'admin.weather.badge': 'Dal 24 marzo 2026',
'admin.weather.description':
'TREK utilizza Open-Meteo come fonte dei dati meteo. Open-Meteo è un servizio meteo gratuito e open-source — non è richiesta alcuna chiave API.',
'admin.weather.forecast': 'Previsioni a 16 giorni',
'admin.weather.forecastDesc': 'In precedenza 5 giorni (OpenWeatherMap)',
'admin.weather.climate': 'Dati climatici storici',
'admin.weather.climateDesc':
'Medie degli ultimi 85 anni per i giorni oltre le previsioni a 16 giorni',
'admin.weather.requests': '10.000 richieste / giorno',
'admin.weather.requestsDesc': 'Gratis, nessuna chiave API richiesta',
'admin.weather.locationHint':
"Il meteo si basa sul primo luogo con coordinate di ogni giorno. Se a un giorno non è assegnato alcun luogo, viene utilizzato come riferimento un qualsiasi luogo dell'elenco.",
'admin.tabs.audit': 'Audit',
'admin.audit.subtitle':
'Eventi sensibili di sicurezza e amministrazione (backup, utenti, 2FA, impostazioni).',
'admin.audit.empty': 'Nessuna voce di audit.',
'admin.audit.refresh': 'Aggiorna',
'admin.audit.loadMore': 'Carica altro',
'admin.audit.showing': '{count} caricati · {total} totali',
'admin.audit.col.time': 'Ora',
'admin.audit.col.user': 'Utente',
'admin.audit.col.action': 'Azione',
'admin.audit.col.resource': 'Risorsa',
'admin.audit.col.ip': 'IP',
'admin.audit.col.details': 'Dettagli',
'admin.tabs.mcpTokens': 'Accesso MCP',
'admin.mcpTokens.title': 'Accesso MCP',
'admin.mcpTokens.subtitle':
'Gestisci le sessioni OAuth e i token API di tutti gli utenti',
'admin.mcpTokens.sectionTitle': 'Token API',
'admin.mcpTokens.owner': 'Proprietario',
'admin.mcpTokens.tokenName': 'Nome token',
'admin.mcpTokens.created': 'Creato',
'admin.mcpTokens.lastUsed': 'Ultimo utilizzo',
'admin.mcpTokens.never': 'Mai',
'admin.mcpTokens.empty': 'Non sono ancora stati creati token MCP',
'admin.mcpTokens.deleteTitle': 'Elimina token',
'admin.mcpTokens.deleteMessage':
"Questo token verrà revocato immediatamente. L'utente perderà l'accesso MCP tramite questo token.",
'admin.mcpTokens.deleteSuccess': 'Token eliminato',
'admin.mcpTokens.deleteError': 'Impossibile eliminare il token',
'admin.mcpTokens.loadError': 'Impossibile caricare i token',
'admin.oauthSessions.sectionTitle': 'Sessioni OAuth',
'admin.oauthSessions.clientName': 'Client',
'admin.oauthSessions.owner': 'Proprietario',
'admin.oauthSessions.scopes': 'Ambiti',
'admin.oauthSessions.created': 'Creato',
'admin.oauthSessions.empty': 'Nessuna sessione OAuth attiva',
'admin.oauthSessions.revokeTitle': 'Revoca sessione',
'admin.oauthSessions.revokeMessage':
"Questa sessione OAuth verrà revocata immediatamente. Il client perderà l'accesso MCP.",
'admin.oauthSessions.revokeSuccess': 'Sessione revocata',
'admin.oauthSessions.revokeError': 'Impossibile revocare la sessione',
'admin.oauthSessions.loadError': 'Impossibile caricare le sessioni OAuth',
'admin.tabs.github': 'GitHub',
'admin.github.title': 'Cronologia rilasci',
'admin.github.subtitle': 'Ultimi aggiornamenti da {repo}',
'admin.github.latest': 'Ultimo',
'admin.github.prerelease': 'Pre-release',
'admin.github.showDetails': 'Mostra dettagli',
'admin.github.hideDetails': 'Nascondi dettagli',
'admin.github.loadMore': 'Carica altro',
'admin.github.loading': 'Caricamento...',
'admin.github.error': 'Impossibile caricare i rilasci',
'admin.github.by': 'da',
'admin.github.support': 'Mi aiuta a continuare a sviluppare TREK',
'admin.update.available': 'Aggiornamento disponibile',
'admin.update.text':
'TREK {version} è disponibile. Stai eseguendo {current}.',
'admin.update.button': 'Vedi su GitHub',
'admin.update.install': 'Installa aggiornamento',
'admin.update.confirmTitle': "Installare l'aggiornamento?",
'admin.update.confirmText':
'TREK verrà aggiornato da {current} a {version}. Il server si riavvierà automaticamente in seguito.',
'admin.update.dataInfo':
'Tutti i tuoi dati (viaggi, utenti, chiavi API, caricamenti, Ferie, Atlante, budget) saranno preservati.',
'admin.update.warning':
"L'app sarà temporaneamente non disponibile durante il riavvio.",
'admin.update.confirm': 'Aggiorna ora',
'admin.update.installing': 'Aggiornamento in corso…',
'admin.update.success':
'Aggiornamento installato! Il server si sta riavviando…',
'admin.update.failed': 'Aggiornamento non riuscito',
'admin.update.backupHint':
'Ti consigliamo di creare un backup prima di aggiornare.',
'admin.update.backupLink': 'Vai a Backup',
'admin.update.howTo': 'Come aggiornare',
'admin.update.dockerText':
'La tua istanza TREK è in esecuzione in Docker. Per aggiornare alla versione {version}, esegui i seguenti comandi sul tuo server:',
'admin.update.reloadHint': 'Ricarica la pagina tra qualche secondo.',
'admin.tabs.permissions': 'Permessi',
'admin.notifications.emailPanel.title': 'Email (SMTP)',
'admin.notifications.webhookPanel.title': 'Webhook',
'admin.notifications.inappPanel.title': 'In-App',
'admin.notifications.inappPanel.hint':
'Le notifiche in-app sono sempre attive e non possono essere disabilitate globalmente.',
'admin.notifications.adminWebhookPanel.title': 'Webhook admin',
'admin.notifications.adminWebhookPanel.hint':
'Questo webhook viene usato esclusivamente per le notifiche admin (es. avvisi di versione). È separato dai webhook utente e si attiva automaticamente quando è configurato un URL.',
'admin.notifications.adminWebhookPanel.saved': 'URL webhook admin salvato',
'admin.notifications.adminWebhookPanel.testSuccess':
'Webhook di test inviato con successo',
'admin.notifications.adminWebhookPanel.testFailed':
'Invio webhook di test fallito',
'admin.notifications.adminWebhookPanel.alwaysOnHint':
'Il webhook admin si attiva automaticamente quando è configurato un URL',
'admin.notifications.ntfy': 'Ntfy',
'admin.ntfy.hint':
'Consente agli utenti di configurare i propri argomenti ntfy per le notifiche push. Imposta il server predefinito di seguito per precompilare le impostazioni utente.',
'admin.notifications.testNtfy': 'Invia Ntfy di test',
'admin.notifications.testNtfySuccess': 'Ntfy di test inviato con successo',
'admin.notifications.testNtfyFailed': 'Invio Ntfy di test fallito',
'admin.notifications.adminNtfyPanel.title': 'Ntfy admin',
'admin.notifications.adminNtfyPanel.hint':
'Questo argomento Ntfy viene usato esclusivamente per le notifiche admin (es. avvisi di versione). È separato dagli argomenti per utente e si attiva sempre quando è configurato.',
'admin.notifications.adminNtfyPanel.serverLabel': 'URL server Ntfy',
'admin.notifications.adminNtfyPanel.serverHint':
'Usato anche come server predefinito per le notifiche ntfy degli utenti. Lasciare vuoto per usare ntfy.sh. Gli utenti possono sovrascriverlo nelle proprie impostazioni.',
'admin.notifications.adminNtfyPanel.serverPlaceholder': 'https://ntfy.sh',
'admin.notifications.adminNtfyPanel.topicLabel': 'Argomento admin',
'admin.notifications.adminNtfyPanel.topicPlaceholder': 'trek-admin-alerts',
'admin.notifications.adminNtfyPanel.tokenLabel':
'Token di accesso (opzionale)',
'admin.notifications.adminNtfyPanel.tokenCleared':
'Token di accesso admin rimosso',
'admin.notifications.adminNtfyPanel.saved': 'Impostazioni Ntfy admin salvate',
'admin.notifications.adminNtfyPanel.test': 'Invia Ntfy di test',
'admin.notifications.adminNtfyPanel.testSuccess':
'Ntfy di test inviato con successo',
'admin.notifications.adminNtfyPanel.testFailed': 'Invio Ntfy di test fallito',
'admin.notifications.adminNtfyPanel.alwaysOnHint':
'Il Ntfy admin si attiva sempre quando un argomento è configurato',
'admin.notifications.adminNotificationsHint':
'Configura quali canali consegnano le notifiche admin (es. avvisi di versione). Il webhook si attiva automaticamente se è impostato un URL webhook admin.',
'admin.notifications.tripReminders.title': 'Promemoria viaggio',
'admin.notifications.tripReminders.hint':
"Invia una notifica promemoria prima dell'inizio di un viaggio (richiede giorni di promemoria impostati sul viaggio).",
'admin.notifications.tripReminders.enabled': 'Promemoria viaggio attivati',
'admin.notifications.tripReminders.disabled':
'Promemoria viaggio disattivati',
'admin.tabs.notifications': 'Notifiche',
'admin.addons.catalog.journey.name': 'Diario di viaggio',
'admin.addons.catalog.journey.description':
'Tracciamento viaggi e diario con check-in, foto e storie quotidiane',
'admin.passkey.title': 'Accesso con passkey',
'admin.passkey.cardHint':
'Consenti agli utenti di accedere con le passkey (WebAuthn). Disattivato per impostazione predefinita.',
'admin.passkey.login': 'Abilita accesso con passkey',
'admin.passkey.loginHint':
'Mostra un\'opzione "Accedi con una passkey" e consenti agli utenti di registrare le passkey nelle loro impostazioni.',
'admin.passkey.notConfigured':
'Nessun dominio WebAuthn è ancora risolto per questa installazione. Imposta APP_URL o il Relying Party ID qui sotto — le passkey restano nascoste fino ad allora.',
'admin.passkey.rpId': 'Relying Party ID (dominio)',
'admin.passkey.rpIdHint':
'Il dominio puro a cui le passkey sono associate, es. trek.example.org. Lascia vuoto per derivarlo da APP_URL. Modificarlo in seguito invalida le passkey esistenti.',
'admin.passkey.origins': 'Origini consentite',
'admin.passkey.originsHint':
'Origini complete separate da virgola, es. https://trek.example.org. Lascia vuoto per usare APP_URL.',
'admin.passkey.reset': 'Reimposta passkey',
'admin.passkey.resetHint':
"Rimuovi tutte le passkey di questo utente (es. in caso di dispositivo smarrito). Potrà comunque accedere con la sua password.",
'admin.passkey.resetConfirm': 'Rimuovere tutte le passkey di {name}?',
'admin.passkey.resetDone': 'Rimosse {count} passkey',
};
export default admin;