/** * it — translation drift fragment. Keys added after the main batches * (language picker search, trust, marketplace guidelines, clothing craft, * weather additions, Cordn MLS chat). Composed LAST in `index.ts` via a deep * merge so these nested keys complement — never replace — the batch namespaces. */ const drift = { nav: { searchLanguages: "Cerca lingue…", noLanguages: "Nessuna lingua trovata", }, mapPage: { searchSuggestPlaces: "Luoghi", }, mapUi: { firstRunTitle: "Inizia", firstRunAddSpot: "Aggiungi il tuo primo spot", firstRunJoinCrew: "Unisciti a una crew", firstRunStartCrew: "Avvia la tua crew", firstRunWallet: "Configura il tuo wallet", forecastDays: "Previsioni a {{count}} giorni", }, spotUi: { forecastDays: "Previsioni a {{count}} giorni", }, marketUi: { trades: { stateRevoked: "revocato", stateVerifying: "verifica", }, loadFailed: "Impossibile raggiungere i relay. Controlla la connessione e riprova.", statusPending: "in sospeso", offers: { closeDeal: "Chiudi l'accordo", loadFailed: "Impossibile caricare le offerte. Controlla la connessione e riprova.", }, pay: { nonSats: "Questa offerta è prezzata in {{currency}}. Il pagamento in-app è solo in sats. Regola direttamente con il venditore.", unsupported: "Questo codice di pagamento (una richiesta Cashu) non è ancora supportato. Chiedi al venditore una fattura o un indirizzo Lightning.", }, escrowRequest: { lockedNotSent: "I fondi sono bloccati in escrow e salvati su questo dispositivo, ma la richiesta non è stata inviata. Riapri l'annuncio per riprovare. Non pagare di nuovo.", mintLabel: "Mint (dove sono bloccati i fondi)", sellerMintHint: "Il venditore preferisce questo mint; i fondi bloccati qui sono i più facili da riscattare per lui.", mintHint: "L'escrow risiede in questo mint. Il venditore riscatta qui, quindi scegline uno di cui vi fidate entrambi.", noMints: "Nessun mint disponibile", p2pkUnsupported: "Questo mint non dichiara il supporto P2PK (NUT-11), quindi l'escrow non può essere bloccato qui. Scegli un altro mint.", }, }, labUi: { offerClothing: "Offri abbigliamento", tabClothing: "Abbigliamento", empty: { clothingTitle: "Ancora nessun designer di abbigliamento", clothingBody: "Sii il primo a offrire abbigliamento personalizzato, kit di squadra e apparel per la scena.", }, craftFields: { sizing: "Gamma di taglie", samples: "Campioni / prototipi", customization: "Personalizzazione", }, }, socialUi: { coordinator: { ourDefaultTitle: "Coordinatore SkateSpots", ourDefaultDesc: "SkateSpots gestisce un coordinatore su relay.skate-spots.org. Usalo per impostazione predefinita, oppure gestisci il tuo — un coordinatore vede solo testo cifrato e metadati, mai i tuoi messaggi.", useOurs: "Usa il coordinatore SkateSpots", }, crewCoordinator: { encryptedChat: "Chat crittografata", privateChatName: "Chat privata", privateChatDesc: "Chat di gruppo con forward secrecy (MLS) tramite un coordinatore.", privateChatDescFull: "La chat privata viene creata una volta da un admin, poi i membri si uniscono.", chatRowDesc: "Tutti nella crew — sigillato con la chiave di ogni membro (NIP-17).", openChat: "Apri", setUpChat: "Configura", joinChat: "Unisciti", checking: "Verifica…", openInAnotherApp: "Apri in un'altra app", openInCordnWeb: "Cordn (web)", openCordnGroup: "Apri la chat della crew", copyForStaircase: "Copia per Staircase", }, dms: { refresh: "Aggiorna", crews: "Crew", crewFounder: "Fondatore", crewMember: "Membro", crewOpen: "Apri", crewSetUp: "Configura", }, form: { cordnGroup: "Gruppo Cordn", cordnGroupHint: "Opzionale: incolla il link del gruppo da Staircase o Cordn web. La tua crew ottiene così una vera chat MLS end-to-end, ospitata sul nostro coordinatore.", }, }, settingsUi: { settingsPage: { trust: "Fiducia", trustSub: "Fonti e visualizzazione", }, }, walletUi: { trust: { mute: "Silenzia", muted: "Silenziato", mutedDesc: "Non vedrai i suoi contenuti.", muteFailed: "Impossibile silenziare. Riprova.", loginToMute: "Accedi per silenziare.", attributedNetwork: "Da persone nella tua rete", attributedProviderHouse: "Dal provider di fiducia della community", attributedProviderCustom: "Dal provider che hai scelto", howItWorks: "Come funziona la fiducia", flaggedNoticeTitle: "Segnalato da skater affidabili", flaggedNoticeDesc: "Fai attenzione. Persone affidabili della rete hanno segnalato questo account.", flaggedReporterFollow: "{{count}} che segui", flaggedReporterNetwork: "{{count}} nella tua rete", flaggedReporterOther: "{{count}} altri account", flaggedReport: "Segnala", flaggedDismiss: "Ignora", bucketVerified: "Verificato", bucketUnknown: "Sconosciuto", bucketFlagged: "Segnalato", bucketVerifiedDesc: "Qualcuno nella tua rete garantisce per questo account.", bucketUnknownDesc: "Nessuno nella tua rete ha ancora garantito per questo account.", bucketFlaggedDesc: "Persone affidabili hanno segnalato questo account.", reportedByTrusted: "Segnalato da {{count}} persone affidabili", }, }, trustUi: { alertsTitle: "Avvisi di rete", alertsDesc: "Account che segui e che persone affidabili hanno segnalato o silenziato.", alertsEmpty: "Nessun avviso. Controlliamo gli account che segui per segnalazioni affidabili.", alertsReported: "Segnalato da {{count}} persone affidabili", alertsMuted: "Silenziato da {{count}} persone affidabili", alertsIgnore: "Ignora", alertsUnfollow: "Smetti di seguire", alertsLogin: "Accedi per vedere gli avvisi sugli account che segui.", providerTitle: "Provider", providerDesc: "I punteggi provengono da un provider che scegli tu. Il provider della community è quello predefinito.", useCommunity: "Usa il provider della community", setProvider: "Imposta un provider", customPubkeyPlaceholder: "npub o pubkey esadecimale del provider", customRelayPlaceholder: "wss://relay.esempio.com", invalidProvider: "Inserisci un npub valido o una pubkey esadecimale di 64 caratteri, e un relay wss://.", publishFailed: "Impossibile pubblicare il provider. Riprova.", providerSaved: "Provider aggiornato.", loggedOutProvider: "Accedi per scegliere un provider.", showMarks: "Mostra i contrassegni di fiducia", showMarksDesc: "Contrassegni verificati e sconosciuti. Le segnalazioni vengono sempre mostrate.", sourceLabel: "Fonte", sourceHouse: "Provider di fiducia della community", sourceCustom: "Il tuo provider", loggedOut: "Accedi per scegliere il tuo provider di fiducia.", seoTitle: "Come funziona la fiducia", seoDescription: "Come SkateSpots mostra la fiducia: tre stati, da dove provengono i punteggi e perché l'assenza non è diffidenza.", title: "Come funziona la fiducia", intro: "Qui la fiducia è un segnale, non un verdetto. Deriva da chi conosci, o da un provider che scegli. Non classifichiamo le persone a livello globale.", statesTitle: "Tre stati", verifiedTitle: "Verificato", verifiedDesc: "Qualcuno nella tua rete garantisce per questo account: un amico di un amico, o il provider che hai scelto.", unknownTitle: "Sconosciuto", unknownDesc: "Nessuno ha ancora garantito. È qui che inizia ogni nuovo account.", flaggedTitle: "Segnalato", flaggedDesc: "Persone affidabili hanno segnalato questo account. È un avviso a guardare più da vicino, non una prova.", absenceTitle: "Nessun badge non è diffidenza", absenceDesc: "La maggior parte degli account non mostra nulla. Significa che nessuno nella tua rete ha ancora garantito, non che qualcosa non va. Non leggere mai un contrassegno mancante come negativo.", sourceTitle: "Chi lo calcola", sourceDesc: "Per impostazione predefinita usiamo la tua rete. Puoi anche scegliere un provider di fiducia che pubblica punteggi firmati su Nostr (NIP-85), o disattivare la visualizzazione. Le segnalazioni vengono sempre mostrate, perché sono un segnale di sicurezza.", endorsementTitle: "La presenza non è un'approvazione", endorsementDesc: "Un contrassegno verificato significa che qualcuno ha garantito, non che la persona sia buona. Una segnalazione significa che persone affidabili l'hanno segnalata, non che sia colpevole. Controlla i dettagli prima di decidere.", povTitle: "Dipende dal punto di vista", povDesc: "Un punteggio è relativo a chi guarda. Un rank di un provider o di una persona non è confrontabile con un altro, e non ne presentiamo mai uno come fatto oggettivo.", settingsCta: "Gestisci nelle impostazioni", }, marketTerms: { link: "Linee guida del Marketplace", seoTitle: "Linee guida del Marketplace", seoDescription: "Come funzionano gli annunci di attrezzatura SkateSpots: peer-to-peer, compratore attento, e le regole.", title: "Linee guida del Marketplace", intro: "SkateSpots è una bacheca di attrezzatura peer-to-peer. Tratti direttamente con l'altra persona: non custodiamo fondi, non spediamo articoli e non risolviamo controversie.", howTitle: "Come funziona", howBody: "Pubblica attrezzatura, contatta il venditore in privato e regola direttamente (contanti, Lightning o scambio). Non ci sono carrello né checkout.", rulesTitle: "Cosa non è consentito", rulesBody: "Niente contenuti illegali, pericolosi o per adulti; niente droghe, armi, contraffazioni o merce rubata. Mantieni gli annunci su attrezzatura da skate e articoli correlati.", respectTitle: "Sii rispettoso", respectBody: "Niente abusi, molestie, minacce o odio. I moderatori possono nascondere annunci o account.", trustTitle: "La fiducia è una guida, non una garanzia", trustBody: "I contrassegni di verifica e la reputazione negli scambi sono segnali dalla rete, non promesse. Fai i tuoi controlli prima di scambiare.", trustLink: "Come funziona la fiducia", privacyLink: "Cosa lascia il tuo dispositivo", safetyTitle: "Scambia in sicurezza", safetyBody: "Incontratevi in pubblico per le consegne, usa l'escrow o un deposito di buona fede per le spedizioni, e non inviare mai denaro fuori dall'app.", moderationTitle: "La moderazione è lieve e reversibile", moderationBody: "I contenuti nascosti restano sui relay e possono essere ripristinati; le controversie tra persone spetta a voi risolverle.", }, labOptions: { clothing: { service: { tees: "T-shirt", hoodies: "Felpe e maglioni", pants: "Pantaloni e shorts", jackets: "Giacche e capispalla", kits: "Kit di squadra e maglie", caps: "Cappellini e berretti", socks: "Calzini", accessories: "Borse e accessori", footwear: "Calzature", patches: "Toppe e applicazioni", griptape: "Abbigliamento griptape e deck", onepiece: "Pezzi unici / upcycled", }, serviceDesc: { tees: "T-shirt e top personalizzati", hoodies: "Felpe, girocollo e pantaloni della tuta", pants: "Pantaloni da lavoro, cargo e shorts", jackets: "Giacche da coach, shell e da lavoro", kits: "Kit di squadra, maglie e uniformi", caps: "Cappellini, berretti e copricapi", socks: "Calzini e maglieria", accessories: "Borse, cinture e piccola pelletteria", footwear: "Scarpe personalizzate", patches: "Toppe ricamati e applicazioni", griptape: "Arte su griptape e abbigliamento deck", onepiece: "Pezzi singoli e capi upcycled", }, method: { screenprint: "Serigrafia", dtg: "DTG / stampa diretta su tessuto", embroidery: "Ricamo", cutsew: "Cut & Sew", sublimation: "Sublimazione", heattransfer: "Trasferimento a caldo / vinile", garmentdye: "Tintura in capo", knit: "Maglieria", patchwork: "Patchwork", allover: "Stampa all-over", }, material: { cotton: "Cotone", heavyweight: "Peso pesante", organic: "Biologico / sostenibile", fleece: "Pile", denim: "Denim", canvas: "Canvas", nylon: "Nylon / tecnico", wool: "Merino / lana", leather: "Pelle", recycled: "Riciclato / deadstock", }, }, }, becomeRolesUi: { clothing: { seoTitle: "Diventa designer di abbigliamento - SkateSpots", seoDescription: "Abbigliamento personalizzato, kit di squadra e apparel per la scena.", heading: "Designer di abbigliamento", tagline: "Abbigliamento personalizzato, kit di squadra e apparel per la scena", noun: "designer di abbigliamento", rateLabel: "Tariffa", portfolioLabel: "Link shop / portfolio", sectionWhatYouMake: "Cosa crei", sectionHowYouMake: "Come lo crei", sectionMaterials: "Materiali", minimumPlaceholder: "es. 10 pezzi", turnaroundPlaceholder: "es. 2-3 settimane", sizingPlaceholder: "es. XS-3XL / su misura", samplesHelper: "Offri campioni o prototipi prima di una produzione completa?", customizationPlaceholder: "es. nomi, numeri, grafiche", }, }, weatherUi: { updated: "Aggiornato", refresh: "Aggiorna", unavailable: "Meteo non disponibile.", retry: "Riprova", sunrise: "Alba", sunset: "Tramonto", legendTitle: "Punteggio meteo", legendWeatherOnly: "Solo meteo", }, cordnUi: { title: "Chat privata", subtitle: "Crittografata end-to-end (MLS) tra i membri della crew. Il coordinatore instrada solo testo cifrato e metadati — non vede mai il contenuto dei messaggi.", notLoggedIn: "Accedi per usare la chat privata della crew.", membersOnly: "Solo i membri della crew possono aprire la chat privata.", connecting: "Connessione…", noCoordinator: "Nessun coordinatore è ancora configurato per questa crew.", noGroupAdmin: "La chat privata di questa crew non è ancora stata creata.", noGroupMember: "Non sei ancora nella chat privata di questa crew.", create: "Crea la chat privata", requestJoin: "Chiedi di unirti", checkInvite: "Controlla l'invito", requested: "Richiesta inviata — un admin della crew la approverà.", noInvite: "Nessun invito in attesa. Chiedi a un admin di approvare la tua richiesta.", placeholder: "Scrivi alla crew…", send: "Invia", refresh: "Aggiorna", requests: "Richieste di adesione", checkRequests: "Controlla le richieste", approve: "Aggiungi", noRequests: "Nessuna richiesta di adesione in sospeso.", inviteHint: "Per ora sei solo tu in questa chat — i membri della crew possono toccare “Chiedi di unirti”, poi li approvi qui.", memberCount: "{{count}} nel gruppo", you: "Tu", groupRef: "Link del gruppo", copyRef: "Copia", copied: "Copiato", attachImage: "Allega immagine", uploading: "Caricamento…", uploadFailed: "Impossibile caricare l'immagine.", bannerTitle: "Questa crew non ha ancora una chat privata", bannerBody: "Configura una chat crittografata end-to-end (MLS) per la tua crew — i membri si uniscono dalla scheda.", bannerCta: "Configura", ready: "Connesso · MLS", errorPrefix: "Impossibile raggiungere il coordinatore", interactiveHint: "Il tuo signer chiede l'approvazione a ogni azione — usa Aggiorna e Invia secondo necessità.", }, }; export default drift;