SkateSpots/src/i18n/it/batch6.ts

1989 lines
90 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* it — batch 6: event/shop/tour surfaces (`placesUi`), the marketplace
* (`marketUi`) and Lab option labels (`labOptions`).
*
* Policy: core skate + protocol vocabulary stays English (Spot, Shop, Event,
* Tour, Crew, Gear, Deck, Trucks, Wheels, Bearings, Griptape, Stash, The Lab,
* Nostr, Lightning, Zap, Relay, sats, Marketplace, WTB, escrow, mint, npub,
* CLINK, RSVP, KOTR) plus trick/brand/tool names. Everything else is Italian.
* `{{placeholders}}` are preserved exactly. Missing keys fall back to English.
*/
const itBatch6 = {
placesUi: {
addToCalendar: {
add: 'Aggiungi al calendario',
appleOutlook: 'Apple / Outlook (.ics)',
google: 'Google Calendar',
},
attendees: {
goingCount: 'partecipano',
goingTab: 'Ci vanno ({{count}})',
interestedTab: 'Interessati ({{count}})',
nobodyGoing: 'Nessuno ha ancora confermato.',
nobodyInterested: 'Nessuno si è ancora segnato come interessato.',
noRsvps: "Ancora nessun RSVP — sii il primo a dire che ci sarai.",
trusted: 'Affidabile',
trustedTitle: 'Qualcuno che segui o un mapper affidabile',
youTrust: 'di cui ti fidi',
},
bounty: {
addressCoords: 'Indirizzo e coordinate',
basic: 'Base',
contactInfo: 'Informazioni di contatto',
description: 'Descrizione',
earningPotential: 'Potenziale di guadagno',
excellent: 'Eccellente!',
gettingStarted: 'Per iniziare',
good: 'Buono',
onePhoto: 'Almeno 1 foto',
openingHours: 'Orari di apertura',
shopName: 'Nome dello Shop',
threePhotos: '3+ foto',
tip: '💡 Più qualità = più zap dalla community!',
},
calendar: {
allDay: 'Tutto il giorno',
eventDay: "Giorno dell'evento",
eventsOnDay: '{{count}} eventi',
eventsThisMonth: 'eventi questo mese',
going: 'partecipano',
months: {
january: 'Gennaio',
february: 'Febbraio',
march: 'Marzo',
april: 'Aprile',
may: 'Maggio',
june: 'Giugno',
july: 'Luglio',
august: 'Agosto',
september: 'Settembre',
october: 'Ottobre',
november: 'Novembre',
december: 'Dicembre',
},
nextMonth: 'Mese successivo',
nothingOnDay: 'Niente in questo giorno.',
prevMonth: 'Mese precedente',
tapHighlighted: "Tocca un giorno evidenziato per vedere cosa c'è.",
today: 'Oggi',
tourDay: 'Giorno del Tour',
toursOnDay: '{{count}} tour',
toursThisMonth: 'tour questo mese',
weekdays: {
sun: 'Dom',
mon: 'Lun',
tue: 'Mar',
wed: 'Mer',
thu: 'Gio',
fri: 'Ven',
sat: 'Sab',
},
weekdaysShort: {
sun: 'D',
mon: 'L',
tue: 'M',
wed: 'M',
thu: 'G',
fri: 'V',
sat: 'S',
},
},
countdown: {
ended: 'Terminato',
happeningNow: 'In corso',
inDays: 'Tra {{count}} giorni',
inHoursMins: 'Tra {{hours}}h {{mins}}m',
inMins: 'Tra {{count}} min',
startingNow: 'Inizia ora',
tomorrow: 'Domani',
},
createEvent: {
add: 'Aggiungi',
addNewSpot: 'Aggiungi un nuovo spot →',
changeSpot: 'Cambia Spot',
created: 'Evento creato!',
createdDesc: 'Il tuo evento è stato pubblicato sulla rete.',
entryFee: "Quota d'ingresso",
entryFeeHint: '(opzionale — es. "500 sats" o "10 €")',
entryFeePlaceholder: 'Lascia vuoto per eventi gratuiti',
featuring: 'Con {{name}}',
featuringDesc: 'Questo act sarà taggato come musica dal vivo e mostrato nella loro lista concerti.',
fundingGoal: 'Obiettivo di finanziamento',
fundingGoalHint: '(opzionale — sats da raccogliere via zap)',
fundingGoalPlaceholder: 'es. 50000',
geoNotSupported: 'Geolocalizzazione non supportata',
geoNotSupportedDesc: 'Il tuo browser non supporta la geolocalizzazione.',
hideSpots: 'Nascondi gli Spot',
hostingAs: 'Ospiti come {{name}}',
hostingAsDesc: 'Questo evento apparirà sulla pagina della tua crew e sarà taggato come ospitato da una crew.',
imageUploaded: 'Immagine caricata',
imageUploadedDesc: 'La tua immagine è stata caricata correttamente.',
invalidDate: 'Data non valida',
invalidDateDesc: "Inserisci una data e un'ora di inizio valide.",
invalidEnd: 'Ora di fine non valida',
invalidEndDesc: "L'ora di fine deve essere successiva all'ora di inizio.",
linkedTo: 'Collegato a: {{title}}',
linkToSpot: 'Collega a uno Skate Spot',
linkToShop: 'Collega a uno Shop',
selectedShop: 'Collegato a {{name}}',
selectShopHint: 'Opzionale — tenuto o ospitato in uno skate shop.',
selectShop: 'Seleziona shop',
changeShop: 'Cambia shop',
hideShops: 'Nascondi shop',
searchShops: 'Cerca shop…',
noShopsMatch: 'Nessuno shop corrisponde alla ricerca.',
noShopsAvailable: 'Nessuno shop ancora disponibile.',
linkToTour: 'Collega a un Tour (opzionale)',
linkTourDesc: "Collega questo evento a un tour per mostrare che fa parte di una serie più ampia. Perfetto per tour nazionali, avventure internazionali o giornate di sfida del World Destruction Tour.",
loadingSpots: 'Caricamento spot...',
loadingTours: 'Caricamento tour...',
locationError: 'Errore di posizione',
locationFound: 'Posizione trovata',
locationFoundDesc: 'La tua posizione attuale è stata impostata.',
logoUrl: 'URL del logo (opzionale)',
noSpotsAvailable: 'Nessuno spot disponibile',
noSpotsMatch: 'Nessuno spot corrisponde alla ricerca',
noTourLinked: 'Nessun tour collegato',
optional: '(opzionale)',
pastDesc: "Scegli una data e un'ora future così gli skater possono confermare la presenza e presentarsi.",
pastTitle: "Quell'ora di inizio è nel passato",
publishFailed: 'Pubblicazione non riuscita',
publishFeatured: 'Pubblica evento in evidenza',
removeSponsor: 'Rimuovi sponsor',
searchSpots: 'Cerca spot per nome, posizione o categoria...',
selectedSpot: 'Selezionato: {{name}}',
selectSpot: 'Seleziona Spot',
selectSpotHint: "Seleziona dalla mappa uno spot dove si svolge l'evento",
selectTour: 'Seleziona Tour',
somethingWrong: 'Qualcosa è andato storto',
sponsorName: 'Nome dello sponsor',
sponsors: 'Sponsor',
sponsorsHint: 'Hai uno shop o un brand che ti sostiene? Aggiungi il loro logo — apparirà come fascia "Presented by" sull\'evento.',
startRequired: 'Ora di inizio richiesta',
startRequiredDesc: "Inserisci quando inizia l'evento.",
titleRequired: 'Titolo richiesto',
titleRequiredDesc: 'Inserisci un nome per questo evento.',
uploadFailed: 'Caricamento non riuscito',
uploadFailedDesc: "Caricamento dell'immagine non riuscito",
websiteUrl: 'URL del sito web (opzionale)',
},
createShop: {
address: 'Indirizzo dello Shop',
addressPlaceholder: 'es., 411 N Fairfax Ave, Los Angeles, CA 90036',
addressRequired: 'Indirizzo richiesto',
addressRequiredDesc: "Inserisci l'indirizzo del tuo shop.",
contactHint: 'Aiuta i clienti a contattarti (consigliato almeno un metodo di contatto)',
contactInfo: 'Informazioni di contatto',
created: '🎉 Shop aggiunto!',
createdDesc: 'Il tuo skate shop è ora sulla mappa. Gli skater possono zapparti per ringraziarti!',
descriptionPlaceholder: 'Racconta il tuo shop, cosa vendi, la tua specialità...',
detailsDesc: 'Racconta il tuo shop alla community. Tutti i campi contrassegnati con * sono obbligatori.',
email: 'Email',
hoursOfOperation: 'Orari di apertura',
hoursPlaceholder: 'es., Lun-Sab 10-20, Dom 12-18',
instagram: 'Instagram',
invalidCoords: 'Coordinate non valide',
invalidCoordsDesc: 'Inserisci una latitudine (-90 a 90) e una longitudine (-180 a 180) valide.',
latPlaceholder: 'Latitudine (es., 34.0737)',
lngPlaceholder: 'Longitudine (es., -118.3614)',
locationRequired: 'Posizione richiesta',
locationRequiredDesc: 'Inserisci le coordinate o usa la tua posizione attuale.',
loginToAdd: 'Devi accedere per aggiungere uno skate shop.',
namePlaceholder: 'es., Supreme Los Angeles',
nameRequired: 'Nome dello shop richiesto',
nameRequiredDesc: 'Inserisci un nome per il tuo shop.',
phoneNumber: 'Numero di telefono',
publishFailedDesc: 'Qualcosa è andato storto. Controlla la console per i dettagli.',
shopPhotoAlt: 'Shop',
shopPhotos: 'Foto dello Shop',
subtitle: 'Elenca il tuo shop sulla mappa e connettiti con la community',
upload: 'Carica',
},
createTour: {
acceptedClipSources: 'Fonti clip accettate',
acceptedClipSourcesDesc: 'Quali formati accetti per le clip inviate?',
accommodationInfo: "Info sull'alloggio",
accommodationPlaceholder: "Consigli o sistemazioni per l'alloggio, es. 'Ostelli economici lungo il percorso', 'Serve attrezzatura da campeggio', 'Airbnb inclusi'",
addChallenge: 'Aggiungi sfida',
addCity: 'Aggiungi una città...',
addCountry: 'Aggiungi un paese...',
addShopFirst: 'Aggiungi prima uno shop',
alsoSelected: 'Anche selezionato:',
availabilityPlaceholder: 'es., Weekend, Solo mattine, Su appuntamento',
availabilityQuestion: 'Quando sei di solito disponibile?',
availableShops: 'Skate Shop disponibili ({{count}})',
challengeDescPlaceholder: 'Descrizione opzionale...',
challenges: 'Sfide',
challengesRequired: 'Sfide richieste',
challengesRequiredDesc: 'Aggiungi almeno una sfida che i team devono completare.',
challengesSecret: 'Tutte le sfide sono SEGRETE fino alla data di inizio. I team non le vedranno fino ad allora!',
challengeTitlePlaceholder: "Titolo della sfida, es. 'Kickflip da 10 scalini'",
citiesLabel: 'Città',
citiesOnTour: 'Città del Tour',
cityPlaceholder: 'es., Berlino, Germania',
cityRegion: 'Città / Regione',
cityRequired: 'Città/regione richiesta',
cityRequiredDesc: 'Inserisci la tua città o regione.',
clipAnyUrl: '🔗 Qualsiasi URL',
clipBlossom: '📦 Caricamento Blossom',
clipInstagram: '📸 Instagram',
clipYouTube: '▶️ YouTube',
competitionDates: 'Date della competizione',
competitionDatesWarning: "⚠️ Tutte le sfide sono SEGRETE fino alla data di inizio! I team non vedranno le sfide fino all'inizio della competizione.",
competitionLocations: 'Luoghi della competizione',
competitionLocationsDesc: 'Dove gareggeranno i team? Aggiungi tutte le città e i paesi coinvolti.',
coordsHint: "Le coordinate sono opzionali. Aggiungile per fissare il punto d'incontro sulla mappa.",
countriesLabel: 'Paesi',
countriesRequired: 'Paesi richiesti',
countriesRequiredDesc: 'Aggiungi almeno un paese per il tuo tour internazionale.',
createdDestruction: '💀 WORLD DESTRUCTION TOUR CREATO!',
createdDestructionDesc: 'I team possono registrarsi. Sfide svelate alla data di inizio!',
createDestructionTour: 'Crea World Destruction Tour',
createdInternational: '✈️ Tour internazionale creato!',
createdInternationalDesc: 'La tua avventura globale è in elenco! Connettiti con skater di tutto il mondo.',
createdLocal: '🏠 Tour locale creato!',
createdLocalDesc: 'Il tuo tour è ora visibile. Gli skater possono prenotare via DM!',
createdNational: '🚐 Tour nazionale creato!',
createdNationalDesc: 'Il tuo viaggio su strada è live! Inizia a coordinarti con gli skater interessati.',
departure: 'Partenza *',
departureRequired: 'Data di partenza richiesta',
departureRequiredDesc: 'Imposta quando parte il viaggio così gli skater possono pianificare e prenotare.',
descriptionPlaceholder: "Descrivi cosa vivranno gli skater: spot che visiterai, atmosfera, cosa rende unico il tuo tour...",
destructionDesc: 'Organizza la tua competizione globale in stile KOTR — decidi TU tutto!',
discountHint: 'I partecipanti al tour possono mostrare la conferma di prenotazione allo shop per ricevere questo sconto',
discountPercentage: 'Percentuale di sconto',
dropTour: 'Pubblica un Tour',
duration: 'Durata',
durationHintDestruction: 'Quanto dura la competizione? (1-12 mesi)',
durationHintInternational: "Quante settimane dura l'avventura? (fino a 2 mesi)",
durationHintLocal: 'Quanto dura il tuo tour tipico?',
durationHintNational: 'Quanti giorni dura il viaggio su strada?',
durationWeeksMonths: '{{weeks}} settimane (~{{months}} mesi)',
editTour: 'Modifica Tour',
enable: 'Abilita',
enabled: 'Abilitato',
endBeforeStart: "Fine prima dell'inizio",
endBeforeStartDesc: 'La data di fine della competizione deve essere uguale o successiva alla data di inizio.',
endDate: 'Data di fine',
entryFeeHint: 'Tieni il 95% • La piattaforma prende il 5% • Lascia vuoto per ingresso gratuito',
entryFeePerTeam: "Quota d'ingresso per team (sats)",
entryFeePlaceholder: 'es., 100000',
entryPrizes: 'Ingresso e premi',
filmPremieres: 'Anteprime dei film dei team',
filmPremieresDesc: 'Dopo la competizione, le clip di ogni team diventano un film completo che può debuttare negli skate shop locali di tutto il mondo.',
filmPremieresInfo: '🎥 I team montano le loro clip delle sfide in un film finale. Gli shop possono ospitare eventi di anteprima, collegando la competizione globale alle comunità locali.',
filmReleaseDate: 'Data di uscita del film (opzionale)',
filmReleaseDateHint: 'Quando i film saranno disponibili. Lascia vuoto per pubblicarli subito dopo la fine della competizione.',
fixedSession: 'Sessione fissa',
fixedSessionDesc: "Una data e un'ora stabilite",
flexible: 'Flessibile',
flexibleDesc: 'Prenota quando vuoi via DM',
hide: 'Nascondi',
howDestruction1: '• Competizione globale a squadre — fino a 12 mesi',
howDestruction2: '• TU definisci sfide, punti, premi — noi forniamo solo la piattaforma',
howDestruction3: '• Tutte le sfide sono SEGRETE fino alla data di inizio',
howDestruction4: '• Clip via caricamento Blossom O link esterni (YouTube, Instagram, qualsiasi URL)',
howDestruction5: '• Solo livello avanzato — tutti i tipi di spot inclusi automaticamente',
howDestruction6: "• La piattaforma prende solo il 5% delle quote d'ingresso (NON del montepremi)",
howDestructionTitle: '💀 WORLD DESTRUCTION TOUR - stile KOTR',
howInternational1: '• Avventure transfrontaliere in più paesi',
howInternational2: '• Sei tu a fissare il prezzo — la piattaforma prende solo il 5%',
howInternational3: '• Imposta date di partenza e ritorno così la crew può prenotare i voli',
howInternational4: '• Connetti skater da tutto il mondo',
howInternational5: '• Crea esperienze globali indimenticabili!',
howInternationalTitle: 'Come funzionano i Tour internazionali',
howItWorks: 'Come funziona:',
howLocal1: '• Sei tu a fissare il prezzo — la piattaforma prende il 10%',
howLocal2: '• Gli spot nascosti restano nascosti — li mostri di persona',
howLocal3: '• Organizza una sessione programmata o mantienila flessibile / su appuntamento',
howLocal4: '• Gli skater prenotano via DM, pagano in Lightning e possono aggiungerla al calendario',
howLocal5: '• Costruisci la tua reputazione con recensioni e zap',
howLocalTitle: 'Come funzionano i Tour locali',
howNational1: '• Viaggi su strada multi-città nel tuo paese',
howNational2: '• Sei tu a fissare il prezzo — la piattaforma prende solo il 7%',
howNational3: '• Imposta le date del viaggio così gli skater possono organizzarsi e viaggiare',
howNational4: '• Includi info su trasporti / alloggio per la crew',
howNational5: '• Costruisci leggendarie avventure sugli skate!',
howNationalTitle: 'Come funzionano i Tour nazionali',
imageUploadedDesc: "L'immagine del tuo tour è stata caricata.",
incompleteCoords: 'Coordinate incomplete',
incompleteCoordsDesc: 'Inserisci sia latitudine che longitudine, oppure lascia entrambe vuote.',
internationalDetails: "Dettagli dell'avventura internazionale",
languagesSelected: '{{count}} selezionate',
languagesSpoken: 'Lingue parlate',
latOptional: 'Latitudine (opzionale)',
lngOptional: 'Longitudine (opzionale)',
loadingProfile: 'Caricamento profilo...',
loadingProfileDesc: 'Verifica del tuo stato di verifica NIP-05.',
loadingShops: 'Caricamento shop...',
localShopPremieres: 'Anteprime negli shop locali',
localShopPremieresDesc: 'Gli skate shop di tutto il mondo possono ospitare serate di proiezione',
loginToCreate: 'Devi accedere per creare un tour.',
maxGroupSize: 'Dimensione massima del gruppo',
maxTeams: 'Team massimi',
maxTeamSize: 'Dimensione massima del team',
meetingLocationSet: "La tua posizione attuale è stata impostata come punto d'incontro.",
meetingPointDesc: "Dove incontrerai i partecipanti al tour? Scegli un posto pubblico e ben noto.",
meetingPointLabel: "Punto d'incontro",
meetingPointPlaceholder: 'es., Stazione Warschauer Straße',
meetingPointRequired: "Punto d'incontro richiesto",
meetingPointRequiredDesc: "Inserisci dove incontrerai i partecipanti al tour.",
minTeamSize: 'Dimensione minima del team',
noChallenges: 'Ancora nessuna sfida',
noChallengesDesc: 'Aggiungi sfide che i team devono completare',
noPartnerShop: 'Nessuno shop partner',
noShopsFound: 'Nessuno skate shop trovato sulla rete finora.',
noShopsRegistered: 'Nessuno skate shop ancora registrato',
onlineRelease: 'Pubblicazione online',
onlineReleaseDesc: 'Pubblica i film anche su YouTube/Nostr',
organizerContact: "Dati di contatto dell'organizzatore",
organizerContactHint: 'Saranno visibili ai team registrati',
organizerContactPlaceholder: 'Come possono contattarti i team? es., Nostr npub, email, Telegram, ecc.',
partnerDiscountDesc: 'Offri ai partecipanti al tour uno sconto in uno skate shop locale',
partnerStep1: '1. Collabora con uno skate shop locale di cui ti fidi',
partnerStep2: '2. Imposta una percentuale di sconto per i partecipanti al tour',
partnerStep3: '3. Dopo il tour, dai ai partecipanti una conferma da mostrare allo shop',
partnerStep4: '4. Lo shop onora lo sconto — costruisce community e porta clienti!',
percentOff: '{{percent}}% DI SCONTO',
photoHint: 'Aggiungi una foto di te sullo skate o di uno spot figo del tuo tour.',
pickRide: 'Scegli il tuo mezzo',
place1: '🥇 1°',
place2: '🥈 2°',
place3: '🥉 3°',
platformFee: 'Sei tu a fissare il prezzo • La piattaforma prende il {{percent}}',
points: 'Punti:',
pricePerPerson: 'Prezzo per persona (sats)',
pricePlaceholder: 'es., 25000',
prizeDistribution: 'Distribuzione dei premi',
prizePoolHint: 'Opzionale - premi totali disponibili',
prizePoolPlaceholder: 'es., 2000000',
proTipDesc: 'Prima di elencare uno sconto partner, contatta il proprietario dello shop via DM per concordare la percentuale. Così saranno d\'accordo e onoreranno lo sconto per i tuoi partecipanti.',
proTipTitle: '💡 Consiglio: coordinati prima con lo shop!',
return: 'Ritorno',
returnBeforeDeparture: 'Ritorno prima della partenza',
returnBeforeDepartureDesc: 'La data di ritorno deve essere uguale o successiva alla data di partenza.',
roadTripDetails: 'Dettagli del viaggio su strada',
schedule: 'Programma',
scheduleDesc: "Organizza come sessione programmata una tantum, oppure mantienila flessibile e lascia che gli skater prenotino un orario via DM.",
secretUntilStart: "Segreto fino all'inizio",
selectPartnerShop: 'Seleziona shop partner',
sessionDateRequired: 'Data della sessione richiesta',
sessionDateRequiredDesc: "Scegli la data e l'ora della tua sessione programmata, oppure passa a un programma flessibile.",
sessionDateTime: 'Data e ora della sessione',
sessionDateTimeHint: 'Gli skater vedranno questo orario e potranno aggiungerlo al calendario dalla pagina del tour.',
shopPremieresContact: 'Contatta direttamente questi shop per organizzare serate di anteprima. Tutti gli accordi sono privati.',
shopPremieresHow: '💡 Come funzionano le anteprime negli shop: contatta direttamente gli shop per organizzare serate di anteprima. Tutti gli accordi sono privati tra te e gli shop.',
shopsCanRegister: 'Gli shop possono registrarsi su /create-shop',
show: 'Mostra',
showAllLanguages: 'Mostra tutte le {{count}} lingue',
somethingWrong: 'Qualcosa è andato storto.',
spotTypes: 'Tipi di Spot',
spotTypesRequired: 'Tipi di spot richiesti',
spotTypesRequiredDesc: 'Seleziona almeno un tipo di spot che mostrerai.',
startDate: 'Data di inizio',
startDateRequired: 'Data di inizio richiesta',
startDateRequiredDesc: 'Imposta quando inizia la competizione (le sfide saranno svelate a quella data).',
startingCity: 'Città di partenza',
startingCityPlaceholder: 'es., Los Angeles, USA',
teamSettings: 'Impostazioni dei team',
teamsCount: '{{count}} team',
titlePlaceholder: 'es., Berlino Kreuzberg - Tour degli spot underground',
titleRequired: 'Titolo del tour richiesto',
titleRequiredDesc: 'Inserisci un nome per il tuo tour.',
totalPercent: 'Totale: {{percent}}%',
totalPrizePool: 'Montepremi totale (sats)',
tourDesc: 'Racconta agli skater cosa aspettarsi dal tuo tour',
tourDetails: 'Dettagli del Tour',
tourPhoto: 'Foto del Tour',
tourTitle: 'Titolo del Tour',
transportDestructionPlaceholder: 'Come viaggeranno i team tra le località? Trasporti forniti o consigliati?',
transportInfo: 'Info sui trasporti',
transportPlaceholder: "Come viaggeranno i partecipanti? es., 'Van fornito', 'Volo per Barcellona, noleggiamo un van', 'Treno tra le città'",
tripDatesDesc: 'Fissa le date così gli skater possono chiedere ferie, prenotare voli e pianificare il viaggio.',
tripDatesTitle: 'Date del viaggio',
updated: 'Tour aggiornato!',
updatedDesc: 'Le tue modifiche sono state pubblicate.',
upload: 'Carica',
view: 'Vedi →',
worldDestruction: 'World Destruction Tour',
youReceive: 'Ricevi: {{amount}} sats per persona',
},
editEvent: {
accessDenied: 'Accesso negato',
accessDeniedDesc: 'Puoi modificare solo gli eventi che hai creato.',
backToEvent: "Torna all'Evento",
detailsDesc: 'Aggiorna le informazioni di questo evento. Tutti i campi contrassegnati con * sono obbligatori.',
eventCover: "Copertina dell'evento",
locationUpdated: 'Posizione aggiornata.',
loginToEdit: 'Devi accedere per modificare questo evento.',
newSpot: 'Nuovo spot: {{location}}.',
newTime: 'Nuovo orario: {{date}} alle {{time}}.',
saveChanges: 'Salva modifiche',
saving: 'Salvataggio...',
title: 'Modifica Evento',
updated: 'Evento aggiornato!',
updatedDesc: 'Le tue modifiche sono state pubblicate sulla rete.',
updateDetails: 'Aggiorna i dettagli di {{title}}',
updatedNotified: 'Modifiche pubblicate — {{count}} partecipanti avvisati.',
updateFailed: 'Aggiornamento non riuscito',
updateMessage: "{{parts}} — vedi l'evento per i dettagli.",
},
editShop: {
accessDeniedDesc: 'Puoi modificare solo gli shop che hai creato.',
backToShop: 'Torna allo Shop',
detailsDesc: 'Aggiorna le informazioni del tuo shop. Tutti i campi contrassegnati con * sono obbligatori.',
loginToEdit: 'Devi accedere per modificare questo shop.',
updated: 'Shop aggiornato!',
updateDetails: 'Aggiorna i dettagli di {{name}}',
},
editTour: {
accessDeniedDesc: 'Puoi modificare solo i tour che hai creato.',
loginToEdit: 'Devi accedere per modificare questo tour.',
},
eventCard: {
report: 'Segnala',
},
eventDetail: {
aCrew: 'una crew',
addToCalendar: 'Aggiungi al calendario',
backToEvents: 'Torna agli Eventi',
cancelled: 'Questo evento è stato annullato',
checkUpdate: "— controlla l'aggiornamento",
copyFailed: 'Copia non riuscita',
date: 'Data',
editEvent: 'Modifica evento',
eventFallback: 'Evento',
eventOrganizer: "Organizzatore dell'Evento",
getDirections: 'Ottieni indicazioni',
linkCopied: 'Link copiato',
linkCopiedDesc: "Link dell'evento copiato negli appunti — incollalo dove vuoi.",
live: 'Live:',
liveMusic: 'musica dal vivo',
location: 'Posizione',
newLocation: 'Nuova posizione',
noRsvps: 'Nessun RSVP registrato.',
organizer: 'Organizzatore',
rsvpsClosed: "Gli RSVP sono chiusi — questo evento è stato annullato dall'host.",
seeMap: 'Vedi mappa',
shareEvent: 'Condividi evento',
shareText: '{{title}} — un evento skate su SkateSpots',
shareTextFallback: "Dai un'occhiata a questo evento skate su SkateSpots",
time: 'Ora',
timeChanged: 'Orario modificato',
updatesFromHost: "Aggiornamenti dall'host",
where: 'Dove',
whoCame: 'Chi è venuto',
whosGoing: 'Chi partecipa',
},
events: {
calendar: 'Calendario',
createTour: 'Crea Tour',
events: 'Eventi',
faqFooter: 'Hai domande? Consulta le FAQ →',
hosting: 'Ospiti',
hostingSubtitle: 'I tuoi eventi — RSVP, aggiornamenti e modifiche rapide',
list: 'Elenco',
noEventsMatchFilters: 'Nessun evento corrisponde ai tuoi filtri. Prova a modificarli o rimuoverli.',
noPast: 'Nessun evento passato',
noPastBody: 'Nessun evento skate passato trovato con i tuoi filtri attuali.',
noTours: 'Nessun tour trovato',
noToursBody: 'Ancora nessun tour skate. Crea il primo e porta gli skater alla scoperta degli spot!',
noToursMatchFilters: 'Nessun tour corrisponde ai tuoi filtri. Prova a modificarli o rimuoverli.',
noUpcoming: 'Nessun evento in arrivo',
noUpcomingBody: 'Nessun evento skate in arrivo trovato. Sii il primo a crearne uno!',
past: 'Passati',
resultsCount: '{{count}} risultati',
searchCity: 'Città…',
searchEvent: "Nome dell'evento…",
searchTour: 'Nome del tour…',
tours: 'Tour',
toursSubtitle: 'Guide locali, viaggi su strada e competizioni world destruction',
upcoming: 'In arrivo',
},
eventTypes: {
contest: 'Contest',
demo: 'Demo',
jam: 'Jam',
meetup: 'Meetup',
premiere: 'Anteprima',
session: 'Sessione',
workshop: 'Workshop',
},
featured: {
active: 'Attivo',
bodyEvent: 'Pubblicazione gratuita. Gli eventi in evidenza ricevono un badge e stanno in cima alla pagina degli eventi.',
bodyTour: 'Pubblicazione gratuita. I tour in evidenza ricevono un badge e stanno in cima alla lista dei tour.',
contextEvent: "Il tuo evento resta in elenco gratuitamente in ogni caso — l'evidenza aggiunge solo il badge e il boost.",
contextTour: "Il tuo tour resta in elenco gratuitamente in ogni caso — l'evidenza aggiunge solo il badge e il boost.",
daysRemaining: 'Evidenza attiva · {{count}} giorni rimanenti.',
headingEvent: 'Metti in evidenza questo evento',
headingTour: 'Metti in evidenza questo tour',
optional: 'opzionale',
platformOwner: "Proprietario della piattaforma — l'evidenza è sempre attiva.",
},
filters: {
activeCount: '{{count}} attivi',
all: 'Tutti',
allLevels: 'Tutti i livelli',
eventType: 'Tipo di Evento',
following: 'Seguiti',
newest: 'Più recenti',
popular: 'Popolari',
showResults: 'Mostra risultati',
showResultsActive: 'Mostra risultati · {{count}} attivi',
skillLevel: 'Livello',
sortBy: 'Ordina per',
topRated: 'Più votati',
tourCategory: 'Categoria del Tour',
trusted: 'Affidabile',
trustLevel: 'Livello di affidabilità',
verified: 'Verificato',
},
food: {
bar: 'Bar',
cafe: 'Caffè',
call: 'Chiama',
chooseSpot: 'Scegli uno spot...',
directions: 'Indicazioni',
fastFood: 'Fast Food',
foodCourt: 'Food Court',
locationLabel: 'Posizione:',
noneFound: 'Nessun posto dove mangiare trovato',
noneFoundDesc: 'Non abbiamo trovato ristoranti o caffè entro 1 km da questo spot. Prova a selezionare una posizione diversa.',
placesFound: '{{count}} posti trovati entro 1 km da {{spot}}',
pub: 'Pub',
restaurant: 'Ristorante',
selectSpot: 'Seleziona uno spot',
selectSpotDesc: 'Scegli uno skate spot dal menu sopra per trovare ristoranti, caffè e altre opzioni nelle vicinanze.',
selectSpotTitle: 'Seleziona uno Skate Spot',
subtitle: 'Trova posti dove mangiare vicino ai tuoi skate spot preferiti',
title: 'Cibo vicino agli Spot',
unknown: 'Sconosciuto',
website: 'Sito web',
},
rsvp: {
areYouGoing: 'Ci vai?',
cant: 'Non posso',
cantMakeIt: 'Non riesco a venire',
going: 'Ci vado',
goingCount: 'partecipano',
goingShort: 'Ci vado',
hostNote: 'Sei tu l\'host — ma puoi comunque impostare il tuo stato.',
interested: 'Interessato',
interestedCount: 'interessati',
loginToRsvp: 'Accedi per confermare la presenza (RSVP).',
maybe: 'Forse',
toastError: "Impossibile confermare l'RSVP",
toastGoing: 'Ci sarai! 🛹',
toastInterested: 'Segnato come interessato.',
toastNotGoing: 'Segnato come non partecipante.',
tryAgain: 'Riprova.',
},
shop: {
addNip05Settings: 'Aggiungi NIP-05 nelle Impostazioni',
adminRemovedReason: 'Un admin di SkateSpots ha rimosso lo shop "{{name}}"',
areYouOwner: 'Sei il proprietario dello Shop?',
backToMap: 'Torna alla mappa',
claimDesc: 'Se possiedi o gestisci questo shop, puoi rivendicarlo per verificare la proprietà tramite NIP-05.',
claimNip05Intro: "Per rivendicare questo shop, aggiungi un identificatore NIP-05 che corrisponda al dominio del sito dello shop. Ad esempio, se il sito dello shop è",
claimNip05Your: 'il tuo NIP-05 dovrebbe essere',
contactShop: 'Contatta lo Shop',
deleted: 'Shop eliminato',
deletedDesc: 'Richiesta di eliminazione inviata ai relay. La maggior parte dei relay rimuoverà questo contenuto.',
deleteDialogDesc: 'Questo eliminerà definitivamente "{{name}}" da tutti i relay. Questa azione non può essere annullata.',
deleteDialogTitle: 'Eliminare lo Shop?',
deletedReason: 'Shop eliminato',
deleteFailed: 'Eliminazione non riuscita',
deleteShop: 'Elimina Shop',
linkCopied: 'Link copiato!',
linkCopiedDesc: 'Link dello shop copiato negli appunti.',
nip05Required: '⚠️ Verifica NIP-05 richiesta per rivendicare gli shop',
opens: 'Apre: {{domain}}',
removeAdmin: 'Rimuovi (admin)',
removed: 'Shop rimosso',
removedDesc: 'Questo shop è stato rimosso e sarà nascosto in tutto SkateSpots.',
removeDialogDesc: 'Come admin di SkateSpots stai rimuovendo "{{name}}". Sarà nascosto nell\'app per tutti e una richiesta di eliminazione sarà inviata ai relay.',
removeDialogTitle: 'Rimuovere questo shop? (admin)',
removeShop: 'Rimuovi Shop',
tipMapper: 'Dai un tip al Mapper',
tipMapperDesc: 'Questo shop è stato aggiunto da un membro della community. Zappalo per ringraziarlo!',
updateNip05: 'Aggiorna il NIP-05 per rivendicare',
viewPhotoFull: 'Visualizza foto a schermo intero',
viewPhotoOf: 'Visualizza foto {{index}} di {{total}}',
},
sponsors: {
presentedBy: 'Presentato da',
},
tourCard: {
active: 'Attivo',
completed: 'Completato',
contactForPrice: 'Contatta per il prezzo',
durationDays: '{{count}} giorni',
durationHours: '{{count}} ore',
durationMonths: '{{count}} mesi',
durationWeeks: '{{count}} settimane',
entry: 'Ingresso: {{amount}} sats',
happeningNow: 'In corso',
inDays: 'Tra {{count}} giorni',
inHours: 'Tra {{count}}h',
inMonths: 'Tra {{count}} mesi',
inWeeks: 'Tra {{count}} settimane',
maxGroup: 'Max {{count}}',
price: '{{amount}} sats',
prizePool: '{{amount}} sats',
registrationOpen: 'Iscrizioni aperte',
startingSoon: 'Inizia presto',
teamsMax: '{{count}} team max',
tomorrow: 'Domani',
worldwide: 'In tutto il mondo',
},
tourDetail: {
about: 'Informazioni sul Tour',
availability: 'Disponibilità',
competitionWindow: 'Finestra della competizione',
contactToBook: 'Contatta la guida per prenotare',
discountAt: '{{percent}}% DI SCONTO da {{shop}}',
duration: 'Durata',
languages: 'Lingue',
loginToBook: 'Accedi per prenotare',
loginToBookDesc: 'Accedi per contattare la guida e prenotare questo tour',
maxGroup: 'Gruppo massimo',
meetingPoint: "Punto d'incontro",
notFound: 'Tour non trovato',
notFoundDesc: "Questo tour potrebbe essere stato rimosso o non esistere.",
organizer: 'Organizzatore',
partnerDiscount: 'Sconto shop partner',
partnerDiscountDesc: 'Prenota questo tour per ricevere uno sconto nello skate shop partner. Mostra la conferma di prenotazione al personale dello shop.',
people: '{{count}} persone',
perPerson: 'per persona',
price: 'Prezzo',
runsAbout: 'Dura circa {{duration}}',
scheduledSession: 'Sessione programmata',
shareText: "Dai un'occhiata a questo tour skate locale: {{title}}",
skillLevel: 'Livello',
spotTypes: 'Tipi di Spot',
tourGuide: 'Guida del Tour',
tourSponsors: 'Sponsor del Tour',
tripDates: 'Date del viaggio',
viewProfile: 'Vedi profilo',
},
updates: {
admin: 'Admin',
adminNote: "Stai pubblicando come admin di SkateSpots. Sarà chiaramente etichettato come avviso admin, non dall'host.",
kindCancelled: 'Annullato',
kindNewSpot: 'Nuovo spot',
kindNewTime: 'Nuovo orario',
kindUpdate: 'Aggiornamento',
loading: 'Caricamento aggiornamenti…',
notifiedCount: '{{count}} persone avvisate.',
notifiedEveryone: 'Tutti lo vedranno sull\'evento.',
notifiesRsvps: 'Avvisa {{count}} RSVP',
noUpdates: "Ancora nessun aggiornamento dall'host. Conferma la presenza e sarai avvisato se qualcosa cambia.",
placeholder: 'Pioggia — spostato a domenica alle 14. Ci vediamo al ledge dietro…',
post: 'Pubblica',
postAdminUpdate: 'Pubblica un aggiornamento admin',
posted: 'Aggiornamento pubblicato',
postError: "Impossibile pubblicare l'aggiornamento",
postUpdate: 'Pubblica un aggiornamento',
tryAgain: 'Riprova.',
visibleToEveryone: 'Visibile a tutti su questo evento',
},
destination: {
bitcoin: 'Bitcoin',
closeSearch: 'Chiudi ricerca',
nothingMatches: 'Nessun risultato per “{{query}}”.',
placeholder: 'Cerca spot, shop, esercenti Bitcoin…',
shop: 'Shop',
spot: 'Spot',
typeChars: 'Digita almeno 2 caratteri. Cerca skate spot, skate shop ed esercenti Bitcoin.',
typeCharsNear: 'Digita almeno 2 caratteri. Cerca skate spot, skate shop ed esercenti Bitcoin qui vicino.',
},
dateWindow: {
any: 'Qualsiasi',
anytime: 'In qualsiasi momento',
month: 'Questo mese',
monthShort: 'Mese',
today: 'Oggi',
todayShort: 'Oggi',
week: 'Questa settimana',
weekend: 'Weekend',
weekendShort: 'Weekend',
weekShort: 'Sett.',
},
},
marketUi: {
gearSwap: {
title: 'Gear Swap',
subtitle: 'Compra e vendi gear da skate usato con altri skater',
listGear: 'Elenca Gear',
searchPlaceholder: 'Cerca gear...',
allCategories: 'Tutte le categorie',
forSale: 'In vendita',
wtb: 'WTB',
trust: 'Affidabilità',
filterByTrust: 'Filtra per affidabilità',
allSellers: 'Tutti i venditori',
verifiedOnly: 'Solo verificati',
trustedPlus: 'Trusted+',
followingOnly: 'Solo seguiti',
pickupOrShip: 'Ritiro o spedizione',
localPickup: 'Ritiro locale',
ships: 'Spedizione',
sortBy: 'Ordina per',
newest: 'Più recenti',
priceLowHigh: 'Prezzo: dal più basso',
priceHighLow: 'Prezzo: dal più alto',
trustScore: 'Punteggio di affidabilità',
nearest: 'Più vicini (locali)',
listingFound: '{{count}} annuncio trovato',
listingsFound: '{{count}} annunci trovati',
loadFailed: 'Caricamento degli annunci non riuscito',
tryLater: 'Riprova più tardi.',
noneTitle: 'Nessun annuncio trovato',
noneFiltered: 'Nessun gear corrisponde ai filtri attuali. Prova a rimuoverli o a cercare altro.',
noneFirst: 'Sii il primo a mettere in vendita il tuo gear — deck, trucks, wheels, scarpe, qualsiasi cosa da skate!',
listYourGear: 'Elenca il tuo Gear',
faqLink: 'Hai domande? Consulta le FAQ →',
},
hub: {
browse: 'Esplora',
selling: 'In vendita',
myTrades: 'I miei scambi',
reputation: 'Reputazione',
loginListings: 'Accedi per gestire i tuoi annunci.',
loginReputation: 'Accedi per vedere la tua reputazione e le recensioni.',
},
marketplace: {
heroTitle: 'Shop e Marketplace',
heroBefore: 'Il nostro marketplace è basato su',
heroAfter: '- un marketplace decentralizzato su Nostr. Gli skate shop possono elencare i loro prodotti e puoi comprare/vendere gear usato direttamente con Bitcoin.',
whatIsTitle: "Cos'è Plebeian Market?",
whatIsBody: 'Plebeian Market è un marketplace decentralizzato costruito su Nostr. Compra e vendi gear da skateboarding direttamente con altri skater usando Bitcoin. Nessun intermediario, nessuna commissione, totale libertà.',
noFeesTitle: 'Nessuna commissione',
noFeesBody: 'Nessuna piattaforma che prende il 30%. Vendite dirette peer-to-peer.',
bitcoinTitle: 'Pagamenti in Bitcoin',
bitcoinBody: 'Paga con Bitcoin. Veloce, sicuro, globale.',
decentralizedTitle: 'Decentralizzato',
decentralizedBody: 'Costruito su Nostr. Nessuna azienda lo controlla.',
visit: 'Visita Plebeian Market',
buySellTitle: 'Cosa puoi comprare e vendere',
catCompletes: 'Skate complete',
preBuilt: 'Complete pre-assemblati',
customSetups: 'Setup personalizzati',
beginnerBoards: 'Tavole per principianti',
catParts: 'Parti del Deck',
decks: 'Deck',
trucks: 'Trucks',
wheels: 'Wheels',
bearings: 'Bearings',
gripTape: 'Griptape',
hardware: 'Viteria',
catApparel: 'Abbigliamento e protezioni',
skateShoes: 'Scarpe da skate',
clothing: 'Abbigliamento',
helmets: 'Caschi',
pads: 'Protezioni',
backpacks: 'Zaini',
catAccessories: 'Accessori',
tools: 'Attrezzi',
wax: 'Wax',
rails: 'Rail',
stickers: 'Sticker',
videos: 'Video',
magazines: 'Riviste',
howItWorks: 'Come funziona',
step1Title: 'Esplora i prodotti',
step1Body: 'Visita Plebeian Market e sfoglia gear da skateboarding da shop e privati di tutto il mondo.',
step2Title: 'Contatta i venditori',
step2Body: 'Scrivi direttamente ai venditori via Nostr. Tratta i prezzi, fai domande, organizza la spedizione.',
step3Title: 'Paga con Bitcoin',
step3Body: "Completa l'acquisto usando Bitcoin Lightning per pagamenti istantanei e a basso costo.",
step4Title: 'Lascia un feedback',
step4Body: 'Valuta la tua esperienza e costruisci la reputazione del venditore su Nostr. Le tue recensioni aiutano la community.',
needBitcoinTitle: 'Ti serve Bitcoin?',
needBitcoinBefore: "Ti servirà un wallet Lightning con qualche sat per fare acquisti. Dai un'occhiata alla",
onboardingGuide: 'guida introduttiva',
needBitcoinAfter: 'per consigli sui wallet.',
ownShopTitle: 'Hai uno Skate Shop?',
ownShopBody: 'Elenca il tuo shop su SkateSpots e vendi i tuoi prodotti su Plebeian Market. Raggiungi clienti in tutto il mondo con zero commissioni di piattaforma.',
addShop: 'Aggiungi il tuo Shop',
startSelling: 'Inizia a vendere',
},
listingDetail: {
notFound: 'Annuncio non trovato',
notFoundBody: 'Potrebbe essere stato eliminato o il link è sbagliato.',
backToGearSwap: 'Torna a Gear Swap',
gearSwap: 'Gear Swap',
viewPhoto: 'Visualizza foto {{n}}',
photoAlt: '{{title}} — foto {{n}}',
wantToBuy: 'CERCO',
sold: 'VENDUTO',
description: 'Descrizione',
usuallyHere: 'Di solito qui {{availability}}',
listed: 'Inserito {{date}}',
listingCountOne: '{{count}} annuncio · {{age}}g fa',
listingCountMany: '{{count}} annunci · {{age}}g fa',
relistActive: 'Rimetti attivo',
markSold: 'Segna come venduto',
deleteListing: 'Elimina annuncio',
makeOffer: "Fai un'offerta",
shareListing: 'Condividi annuncio',
unknown: 'Sconosciuto',
linkCopied: 'Link copiato',
linkCopiedBody: 'Condividilo con uno skater.',
copyFailed: 'Impossibile copiare il link',
relisted: 'Rimesso in vendita',
relistedBody: 'Il tuo annuncio è di nuovo attivo.',
couldNotUpdate: 'Impossibile aggiornare',
somethingWrong: 'Qualcosa è andato storto',
},
create: {
imageUploaded: 'Immagine caricata',
uploadFailed: 'Caricamento non riuscito',
failed: 'Non riuscito',
cooldownActive: 'Attesa attiva',
cooldownWait: 'Attendi {{time}} prima di creare un altro annuncio',
limitReached: 'Limite di annunci raggiunto',
limitReachedBody: 'Hai raggiunto il limite mensile di {{limit}} annunci',
feeRequired: 'Commissione richiesta',
feeRequiredBody: 'Paga la commissione anti-spam per continuare',
titleRequired: 'Titolo richiesto',
categoryRequired: 'Categoria richiesta',
photoRequired: 'Foto richiesta',
photoRequiredBody: 'Almeno una foto è richiesta per vendere gear',
nip05Required: 'Verifica NIP-05 richiesta',
nip05RequiredBody: 'Ti serve un indirizzo Nostr verificato per elencare gear',
priceRequired: 'Prezzo richiesto per annunci a prezzo fisso',
sizeRequired: 'Misura richiesta',
sizeRequiredBody: 'Seleziona una misura per {{category}}',
conditionRequired: 'Condizione richiesta',
conditionRequiredBody: 'Seleziona la condizione del tuo {{category}}',
wtbPosted: 'Richiesta di acquisto pubblicata!',
wtbPostedBody: 'I venditori potranno trovare la tua richiesta.',
listingCreated: 'Annuncio creato!',
listingCreatedBody: 'Il tuo gear è ora in vendita.',
publishFailed: 'Pubblicazione non riuscita',
loginRequired: 'Accesso richiesto',
loginRequiredBody: 'Devi accedere per elencare gear.',
backToStash: 'Torna allo Stash',
backToSpot: 'Torna a {{title}}',
backToMarketplace: 'Torna al Marketplace',
backToMap: 'Torna alla mappa',
wantToBuy: 'Cerco',
listYourGear: 'Elenca il tuo Gear',
wtbSubtitle: "Di' alla community quale gear stai cercando",
sellSubtitle: 'Vendi gear da skateboarding alla community',
fromStashTitle: 'Annuncio dal tuo Stash',
fromStashBody: "Precompilato con i dettagli dell'oggetto nel tuo stash. Controlla e scegli un punto d'incontro!",
nip05Banner: 'Per prevenire lo spam e proteggere gli acquirenti, ti serve un indirizzo Nostr verificato (NIP-05) per elencare gear.',
verifiedLabel: 'Verificato:',
checkingTrust: 'Verifica del tuo livello di affidabilità...',
trustLevel: 'Livello di affidabilità:',
trusted: 'Affidabile',
active: 'Attivo',
newcomer: 'Nuovo arrivato',
newUser: 'Nuovo utente',
remaining: '{{remaining}} di {{limit}} annunci rimanenti questo mese',
cooldownBody: "I nuovi utenti hanno un'attesa di 24 ore tra un annuncio e l'altro.",
timeRemaining: 'Tempo rimanente: {{time}}',
monthlyLimitTitle: 'Limite mensile raggiunto',
monthlyLimitBody: 'Hai raggiunto il limite di {{limit}} annunci questo mese. Costruisci la tua reputazione creando spot o completando vendite per aumentare il limite.',
powAccepted: 'Proof of work accettato!',
feePaid: 'Commissione pagata!',
canCreateNow: 'Ora puoi creare il tuo annuncio.',
whatDoTitle: 'Cosa vuoi fare?',
sellGear: 'VENDI GEAR',
categoryTitle: 'Categoria *',
categoryHint: 'Che tipo di gear?',
detailsTitle: 'Dettagli del Gear',
detailsWtbHint: 'Descrivi cosa stai cercando',
detailsSellHint: 'Racconta il tuo oggetto agli acquirenti',
titleLabel: 'Titolo *',
titlePlaceholderWtb: 'Cerco deck 8.0"',
titlePlaceholderSell: 'Deck Palace quasi nuovo 8.25"',
summaryLabel: 'Breve riepilogo',
summaryPlaceholderWtb: 'Qualsiasi marca, preferisco grafiche minimali',
summaryPlaceholderSell: 'Ottime condizioni, usato pochissimo',
descriptionLabel: 'Descrizione',
descriptionPlaceholderWtb: 'Descrivi esattamente cosa cerchi - preferenze di marca, requisiti di condizione, ecc.',
descriptionPlaceholderSell: "Ho preso questo deck a Natale ma preferisco una misura più piccola. Felice di fartelo provare prima dell'acquisto!",
fulfilmentLabel: 'Come viene consegnato?',
pickup: 'Ritiro',
pickupHint: 'Incontro di persona',
ships: 'Spedizione',
shipsHint: 'Spediscilo',
both: 'Entrambi',
bothHint: 'Indifferente',
addressNote: 'Non raccogliamo mai il tuo indirizzo — per la spedizione, condividilo privatamente nella chat dello scambio.',
postageLabel: 'Chi paga la spedizione?',
requireEscrow: 'Richiedi escrow',
requireEscrowHint: "Chiedi all'acquirente di saldare tramite escrow Cashu.",
postageBuyer: "Paga l'acquirente",
postageSeller: 'Pago io',
postageSplit: 'Dividi',
sizeLabel: 'Misura',
selectSize: 'Seleziona misura',
truckHeight: 'Altezza dei Trucks',
selectHeight: 'Seleziona altezza',
wheelHardness: 'Durezza delle Wheels',
selectHardness: 'Seleziona durezza',
pricingTitle: 'Prezzo',
pricingWtbHint: 'Come vuoi pagare?',
pricingSellHint: 'Come vuoi vendere?',
priceLabel: 'Prezzo *',
currencyLabel: 'Valuta',
photosTitle: 'Foto',
photosSellHint: 'Almeno una foto è richiesta',
photosWtbHint: 'Opzionale - aggiungi immagini di riferimento',
productPhoto: 'Prodotto {{n}}',
upload: 'Carica',
photosNote: 'Aggiungi fino a 5 foto. La prima immagine sarà quella principale.',
pickupLocationTitle: 'Luogo di ritiro',
pickupLocationHint: 'Collega a uno skate spot per incontri facili',
searchSpots: 'Cerca spot...',
noSpotsFound: 'Nessuno spot trovato. Prova una ricerca diversa.',
availabilityLabel: 'Quando sei di solito disponibile?',
availabilityPlaceholder: 'Weekend 10-14, mar/gio sera',
availabilityHint: 'Aiuta gli acquirenti a coordinare un incontro con te',
durationTitle: "Durata dell'annuncio",
durationHint: 'Per quanto tempo deve restare attivo questo annuncio?',
publishing: 'Pubblicazione...',
checkingEligibility: 'Verifica dei requisiti...',
cooldownButton: 'ATTESA: {{time}}',
limitReachedButton: 'LIMITE RAGGIUNTO',
payFeeButton: 'PAGA LA COMMISSIONE PER CONTINUARE',
postWtbButton: 'PUBBLICA RICHIESTA',
listForSaleButton: 'ELENCA GEAR IN VENDITA',
},
trades: {
title: 'I miei scambi',
loginBody: 'Accedi per gestire i tuoi scambi nel marketplace e la tua reputazione.',
subtitle: "Conferme, richieste e la reputazione che costruiscono. Il pagamento viene organizzato con l'altro skater — l'app registra solo l'accordo.",
actionNeeded: 'Azione richiesta',
askedToConfirmSale: 'ti ha chiesto di confermare una vendita',
recordedSale: 'ha registrato una vendita — conferma la tua parte',
confirmSale: 'Conferma vendita',
confirm: 'Conferma',
nothingWaiting: 'Niente in attesa per te al momento. 🛹',
yourRecords: 'I tuoi record di scambi',
noTrades: 'Ancora nessuno scambio. Chiudi un accordo e confermalo per iniziare a costruire la reputazione.',
browseGearSwap: 'Sfoglia Gear Swap',
roleSold: 'Venduto',
roleBought: 'Comprato',
roleTrade: 'Scambio',
with: 'con',
viewListing: 'Vedi annuncio',
revoke: 'Revoca',
revokeTitle: 'Revocare questo record di scambio?',
revokeBody: "Smetterà di contare per la tua reputazione. L'altra parte mantiene la propria attestazione. Usalo per un accordo contestato o sbagliato.",
revokeNote: "Ritirato dall'autore.",
revoked: 'Record di scambio revocato',
revokedBody: 'Non conta più per la reputazione.',
revokeFailed: 'Impossibile revocare lo scambio',
saleConfirmed: 'Vendita confermata',
saleConfirmedBody: 'Ora possono confermare la loro parte.',
saleConfirmFailed: 'Impossibile confermare la vendita',
tradeConfirmed: 'Scambio confermato',
tradeConfirmedBody: 'Reputazione aggiornata per entrambi.',
tradeConfirmFailed: 'Impossibile confermare lo scambio',
somethingWrong: 'Qualcosa è andato storto.',
},
card: {
listingDeleted: 'Annuncio eliminato',
listingRemoved: 'Annuncio rimosso',
listingDeletedBody: 'Il tuo annuncio è stato rimosso. I relay che rispettano le eliminazioni smetteranno di servirlo.',
listingRemovedBody: 'Questo annuncio è stato rimosso e sarà nascosto in tutto SkateSpots.',
removeFailed: 'Rimozione non riuscita',
somethingWrong: 'Qualcosa è andato storto',
markedSold: 'Segnato come venduto',
markedSoldBody: 'Il tuo annuncio è ora mostrato come venduto.',
couldNotUpdate: 'Impossibile aggiornare',
relisted: 'Rimesso in vendita',
relistedBody: 'Il tuo annuncio è di nuovo attivo.',
listingOptions: 'Opzioni annuncio',
report: 'Segnala',
removeAdmin: 'Rimuovi (admin)',
postage: 'spedizione',
newSeller: 'Nuovo venditore',
saleOne: '{{count}} vendita',
saleMany: '{{count}} vendite',
iHaveThis: "Questo ce l'ho!",
deleteTitle: 'Eliminare "{{title}}"?',
adminRemoveTitle: 'Rimuovere questo annuncio? (admin)',
deleteBody: 'Questo chiede ai relay di rimuovere il tuo annuncio "{{title}}". Non può essere annullato da qui — dovresti crearne uno nuovo.',
adminRemoveBody: 'Come admin di SkateSpots stai rimuovendo "{{title}}". Sarà nascosto nell\'app per tutti e una richiesta di eliminazione sarà inviata ai relay.',
deleting: 'Eliminazione…',
removing: 'Rimozione…',
deleteListing: 'Elimina annuncio',
removeListing: 'Rimuovi annuncio',
reportCount: '{{count}} segnalazione',
reports: '{{count}} segnalazioni',
viewTitle: 'Vedi {{title}}',
reportListing: 'Segnala annuncio',
manageListing: 'Gestisci annuncio',
trusted: 'Affidabile',
daysOld: '{{n}}g',
monthsOld: '{{n}} mesi',
yearsOld: '{{n}} anni',
listingsCount: '{{count}} annunci',
postageBuyer: 'spedizione: acquirente',
postageSeller: 'spedizione: venditore',
postageSplit: 'spedizione: divisa',
powTitle: 'NIP-13 proof of work — anti-spam gratuito',
verifiedTradeOne: '{{count}} scambio verificato',
verifiedTrades: '{{count}} scambi verificati',
reportSubmitted: 'Segnalazione inviata',
reportSubmittedBody: 'Grazie per aiutarci a mantenere il marketplace sicuro.',
reportFailed: 'Invio della segnalazione non riuscito',
selectReason: 'Seleziona un motivo',
reportDialogBody: 'Aiuta a mantenere il marketplace sicuro segnalando annunci inappropriati o fuorvianti.',
reasonLabel: 'Motivo della segnalazione *',
detailsLabel: 'Dettagli aggiuntivi (opzionale)',
detailsPlaceholder: 'Fornisci qualsiasi contesto aggiuntivo che possa aiutare...',
reportNote: 'Le segnalazioni sono pubblicate su Nostr e aiutano la community a identificare annunci problematici. Gli annunci con più segnalazioni potrebbero essere nascosti automaticamente.',
submitting: 'Invio...',
submitReport: 'Invia segnalazione',
},
tradeActions: {
tradeConfirmed: 'Scambio confermato',
tradeConfirmedWithProof: 'È stata allegata una ricevuta verificabile — conta per gli scambi verificati.',
tradeConfirmedBody: 'Reputazione aggiornata per entrambi.',
tradeConfirmFailed: 'Impossibile confermare lo scambio',
somethingWrong: 'Qualcosa è andato storto.',
requestNote: 'Conferma il nostro scambio per "{{title}}".',
requestSent: 'Conferma richiesta',
requestSentBody: 'Il venditore ora può confermare la vendita e costruire entrambe le reputazioni.',
requestFailed: 'Impossibile inviare la richiesta',
escrowRefunded: 'Escrow rimborsato',
escrowRefundedBody: 'I fondi sono tornati nel tuo wallet Cashu.',
escrowRefundFailed: "Impossibile rimborsare l'escrow",
confirmThisTrade: 'Conferma questo scambio',
escrowAndRequest: 'Escrow e richiesta',
shipsEscrowHint: "Accordo spedito — usa l'escrow così nessuna delle due parti spedisce nel vuoto. Condividi il tuo indirizzo privatamente nella chat dello scambio, mai qui.",
shipsHint: "Accordo spedito — preferisci l'escrow se il venditore lo offre, e condividi il tuo indirizzo solo nella chat.",
askSeller: 'Chiedi al venditore di confermare',
waitingSeller: 'Conferma richiesta — in attesa del venditore.',
refundEscrow: 'Rimborsa escrow',
buyWithSats: 'Compra con sats',
depositTitle: 'Acconto di buona fede (opzionale)',
payDeposit: 'Paga acconto',
depositBefore: 'Uno scambio non ha fattura, quindi è così che ottiene un',
verifiableCost: 'costo verificabile',
depositAfter: ". Rimborso alla consegna (o usa l'escrow Cashu per un rimborso automatico). ⚠️ Prova l'impegno, non la consegna.",
depositPaid: 'Acconto pagato',
depositPaidBody: 'Salvato — sarà allegato quando lo scambio viene confermato.',
paid: 'Pagato ⚡',
paidWithProof: 'Ricevuta verificabile salvata — conferma lo scambio perché conti.',
paidBody: 'Chiedi al venditore di confermare lo scambio così conta per entrambi.',
},
offers: {
accepted: 'Accettata',
declined: 'Rifiutata',
withdrawn: 'Ritirata',
open: 'Aperta',
noAmount: 'nessun importo',
titleOwner: 'Offerte ({{count}})',
titleBuyer: 'Le tue trattative',
you: 'Tu',
them: 'Loro',
paidAskConfirm: 'Pagato — chiedi al venditore di confermare lo scambio.',
payWithSats: 'Paga con sats',
accept: 'Accetta',
decline: 'Rifiuta',
counter: 'Controfferta',
counterPlaceholder: 'La tua controfferta (sats)',
send: 'Invia',
counterItemPlaceholder: '…oppure controproponi con un oggetto da scambiare (opzionale)',
waitingOn: 'In attesa di',
waitingOnSuffix: '— il tuo turno tornerà se contropropongono.',
withdraw: 'Ritira',
dmAccepted: '✅ La tua offerta è stata accettata! Scrivigli per organizzare la consegna.',
dmDeclined: '❌ La tua offerta è stata rifiutata.',
offerAccepted: 'Offerta accettata',
offerDeclined: 'Offerta rifiutata',
respondFailed: 'Impossibile rispondere',
somethingWrong: 'Qualcosa è andato storto.',
offerWithdrawn: 'Offerta ritirata',
withdrawFailed: 'Impossibile ritirare',
enterAmountOrItem: 'Inserisci un importo o un oggetto da scambiare',
counterDm: 'Controfferta',
counterSent: 'Controfferta inviata',
counterSentBody: 'Ora è il loro turno.',
counterFailed: 'Impossibile inviare la controfferta',
},
offer: {
validAmount: 'Inserisci un importo valido',
describeOffer: 'Descrivi la tua offerta',
describeOfferBody: 'Aggiungi un importo, un oggetto da scambiare o un messaggio.',
dmAmount: ' per {{amount}} sats',
dmItem: ' (offro: {{item}})',
dmBody: '🛹 Nuova offerta sul tuo annuncio "{{title}}"{{amount}}{{item}}.{{note}}',
sent: 'Offerta inviata',
sentBody: '{{sellerName}} può accettarla o rifiutarla.',
sendFailed: "Impossibile inviare l'offerta",
somethingWrong: 'Qualcosa è andato storto.',
title: "Fai un'offerta",
description: 'Offri sats, o scambia qualcosa — {{sellerName}} può accettare, rifiutare o controproporre. La consegna la organizzate tra voi.',
amountLabel: 'Importo (sats, opzionale)',
amountPlaceholder: 'es. 45000',
itemLabel: 'Oppure scambia qualcosa (opzionale)',
itemPlaceholder: 'es. il mio deck 8.25 + wheels di riserva',
itemHint: 'Scambi? Metti qui cosa offri — puoi combinarlo con i sats.',
messageLabel: 'Messaggio (opzionale)',
messagePlaceholder: 'Qualcosa che il venditore dovrebbe sapere…',
send: 'Invia offerta',
},
markSold: {
enterBuyer: "Inserisci l'npub dell'acquirente",
dealClosed: 'Accordo chiuso 🎉',
dealClosedBody: 'Annuncio segnato come venduto e scambio pubblicato per la reputazione.',
closeFailed: "Impossibile chiudere l'accordo",
somethingWrong: 'Qualcosa è andato storto.',
title: "Chiudi l'accordo",
description: "Segna questo annuncio come venduto e registra un'attestazione di scambio firmata per te e l'acquirente.",
buyerLabel: "npub dell'acquirente",
methodLabel: 'Come è stato pagato? (autodichiarato)',
amountLabel: 'Importo in sats (opzionale)',
submit: 'Segna venduto',
},
handoff: {
title: 'Organizza la consegna',
suggest: 'Proponi un orario e un luogo',
suggestDm: 'Ciao! Vorrei comprare "{{title}}". Proponi un orario e un luogo per incontrarci — volentieri in uno skate spot pubblico.',
orMeetAt: 'Oppure incontrati in uno spot pubblico vicino:',
spotDm: 'Ciao! Vorrei comprare "{{title}}". Ci vediamo a {{spot}}? {{url}}',
shareDelivery: 'Condividi i dettagli di consegna',
deliveryDm: 'Ciao! Vorrei comprare "{{title}}". Ecco i miei dettagli di consegna:\n\nNome:\nIndirizzo:\n\n(Condividi solo ciò che serve al corriere.)',
useLocker: 'Usa un locker / punto di ritiro',
lockerDm: 'Ciao! Vorrei comprare "{{title}}". Possiamo usare un locker / punto di ritiro invece del mio indirizzo di casa?',
noteBefore: 'Questi dettagli restano nella chat privata — SkateSpots non li vede mai. Per accordi spediti, preferisci',
escrow: 'escrow',
noteMiddle: ', e',
neverPay: "non pagare mai fuori dai canali dell'app",
noteAfter: '. Incontratevi in pubblico.',
},
shipping: {
noCounterparty: 'Ancora nessuna controparte',
noCounterpartyBody: "Il venditore dovrebbe prima registrare la vendita (indicando l'acquirente).",
markedShipped: 'Segnato come spedito',
markedReceived: 'Segnato come ricevuto',
issueReported: 'Problema segnalato',
receivedBody: "Grazie — questo non sblocca l'escrow; salda direttamente con il venditore.",
notifiedBody: "L'altra parte è stata avvisata.",
updateFailed: 'Impossibile aggiornare',
somethingWrong: 'Qualcosa è andato storto.',
title: 'Spedizione',
shipped: 'spedito',
received: 'ricevuto',
issue: 'problema',
trackingPlaceholder: 'Numero di tracciamento (opzionale)',
iShipped: "L'ho spedito",
iReceived: "L'ho ricevuto",
reportIssue: 'Segnala un problema',
noteBefore: 'Autodichiarato — una nota logistica,',
notProof: 'non una prova',
noteAfter: '. Segnare "ricevuto" non sblocca l\'escrow. ⚠️ Non fotografare un pacco con un indirizzo visibile e condividi un numero di tracciamento solo se ti va che sia pubblico.',
},
pay: {
sent: 'Pagamento inviato ⚡',
sentWithProof: 'Ricevuta di pagamento verificabile salvata — conterà come pagamento verificato.',
sentBody: 'Avvisa il venditore — può confermare lo scambio così conta per entrambi.',
failed: 'Pagamento non riuscito',
title: 'Paga con sats',
descSendPrefix: 'Invia',
descSendSuffix: 'a {{sellerName}} per saldare questo accordo.',
descSettle: 'Salda questo accordo direttamente con {{sellerName}}.',
paid: 'Pagato!',
paidBody: 'Chiedi al venditore di confermare lo scambio — due conferme costruiscono entrambe le reputazioni.',
noMethod: '{{sellerName}} non ha impostato un metodo di pagamento (nessuna fattura o indirizzo Lightning). Scrivigli per organizzare il pagamento.',
ownListing: 'Questo è il tuo annuncio.',
paying: 'Pagamento…',
pay: 'Paga',
payAmount: 'Paga {{amount}} sats',
footnote: 'Paga dal tuo wallet collegato (NWC, WebLN o Cashu) direttamente a {{sellerName}} — SkateSpots non trattiene mai i fondi.',
},
spamFee: {
invoiceComment: 'Commissione annuncio SkateSpots',
generateFailed: 'Generazione della fattura non riuscita',
paymentSuccess: 'Pagamento riuscito!',
satsSent: '{{amount}} sats inviati a {{name}}',
autoPayFailed: 'Pagamento automatico non riuscito',
autoPayFailedBody: 'Paga manualmente usando il codice QR o la fattura',
invoiceCopied: 'Fattura copiata!',
copyFailed: 'Copia non riuscita',
received: 'Pagamento ricevuto!',
receivedBody: 'La tua commissione di {{amount}} sat è stata pagata. Ora puoi creare il tuo annuncio.',
title: "Commissione una tantum per l'annuncio",
subtitle: 'Come nuovo membro, è richiesta una piccola commissione per il tuo primo annuncio.',
whyTitle: 'Perché devo pagare?',
spamLabel: 'Prevenzione spam:',
spamBody: 'Questa commissione ferma bot e truffatori che inondano il marketplace di annunci falsi.',
trustLabel: 'Costruzione della fiducia:',
trustBody: 'I nuovi account devono dimostrare impegno prima di elencare. Dopo alcuni annunci riusciti, questa commissione è esente.',
supportsLabel: 'Sostiene la community:',
supportsPrefix: 'La commissione va a',
supportsSpotOwner: ' — la persona che ha creato questo spot!',
supportsPlatform: ' — aiuta a mantenere SkateSpots attivo.',
oneTimeFee: '~{{usd}} USD • Commissione una tantum',
payToContinue: 'Paga {{amount}} sats per continuare',
proveWork: 'Dimostra il lavoro invece — gratis',
proveWorkBody: 'Spendi qualche secondo di CPU invece di {{amount}} sats. Niente soldi, niente wallet — una tassa anti-spam, non un pagamento.',
generating: 'Generazione fattura...',
processing: 'Elaborazione del pagamento...',
qrAlt: 'Codice QR di pagamento',
copyInvoice: 'Copia fattura',
openWallet: 'Apri wallet',
payWithWallet: 'Paga con il wallet collegato',
scanHint: 'Scansiona il codice QR con un wallet Lightning o usa i pulsanti sopra',
skipTitle: 'Come evitare questa commissione in futuro:',
skip1: 'Aggiungi uno skate spot alla mappa',
skip2: 'Completa 2-3 annunci riusciti',
skip3: 'Costruisci la tua reputazione nella community',
skipNote: 'I membri affidabili ottengono annunci illimitati gratuiti!',
},
reputation: {
highlyTrusted: 'Trader altamente affidabile',
building: 'Reputazione in costruzione',
newTrader: 'Nuovo trader',
title: 'Scambi',
verified: 'Verificato',
sales: 'Vendite',
purchases: 'Acquisti',
tradeConfirmedOne: 'scambio confermato reciprocamente',
tradeConfirmedMany: 'scambi confermati reciprocamente',
with: 'con',
personOne: 'persona',
personMany: 'persone',
awaiting: 'In attesa di conferma reciproca',
withPaymentProof: 'con una prova di pagamento allegata',
selfReported: '(autodichiarato — non verificato)',
paymentVerified: 'pagamento verificato',
zapReceipt: '(ricevuta zap)',
singlePartnerWarning: 'Ogni conferma è con lo stesso account. La conferma reciproca è autodichiarata, quindi tratta questo record con cautela.',
lowDiversityWarning: 'La maggior parte delle conferme proviene da pochissimi account. Un piccolo gruppo che si garantisce a vicenda può sembrare attivo — tratta questo record con cautela.',
ringWarning: 'Questi account commerciano soprattutto tra loro — un cluster chiuso. La conferma reciproca dentro un anello è una prova debole.',
weighted: 'Ponderato per fiducia e attività',
footnote: 'Autodichiarato e firmato reciprocamente — un segnale, non una prova di pagamento.',
},
reputationPanel: {
reviewOfYou: 'Recensione su di te',
yourRecord: 'il tuo record',
listing: 'Annuncio',
averageOne: 'media da {{count}} valutazione',
averageMany: 'media da {{count}} valutazioni',
reviewsTitle: 'Recensioni e record di scambi',
fromOthers: '{{count}} da altri',
emptyBefore: 'Ancora nessun record di scambi. Chiudi un accordo e confermalo in',
emptyAfter: '— ogni conferma diventa una recensione su entrambi i profili.',
},
recommendations: {
published: 'Raccomandazione pubblicata',
publishedBody: 'Grazie per la garanzia.',
failed: 'Impossibile raccomandare',
somethingWrong: 'Qualcosa è andato storto.',
title: 'Trader affidabile',
recommendedBy: 'Raccomandato da',
skaterOne: 'skater',
skaterMany: 'skater',
none: 'Ancora nessuna raccomandazione.',
youRecommend: 'Raccomandi questo trader ✓',
recommend: 'Raccomanda come trader affidabile',
},
notification: {
newOffer: 'Nuova offerta',
counterOffer: 'Controfferta',
offerAccepted: 'Offerta accettata',
offerDeclined: 'Offerta rifiutata',
offerWithdrawn: 'Offerta ritirata',
confirmTrade: 'Conferma uno scambio',
tradeConfirmed: 'Scambio confermato',
reviewOffer: "Esamina l'offerta",
openListing: 'Apri annuncio',
},
confirmRow: {
rateTrade: 'Valuta lo scambio:',
},
deckRating: {
title: '{{value}}/10 deck',
aria: '{{n}} di 10',
},
clink: {
tip: 'Tip in Bitcoin',
copiedBody: 'Codice CLINK copiato negli appunti.',
copyFailed: 'Copia non riuscita',
copyFailedBody: 'Impossibile accedere agli appunti.',
whatIs: "Cos'è CLINK?",
tooltipTitle: 'Paga direttamente in Bitcoin su Nostr',
tooltipBody: 'CLINK è un codice di pagamento self-custodial — nessun account app, nessun intermediario. Scansionalo con un wallet Lightning compatibile e il tip va direttamente a loro.',
descRecipient: 'Invia un pagamento Bitcoin (Lightning) self-custodial a {{recipientName}} — nessun intermediario.',
descGeneric: 'Invia un pagamento Bitcoin (Lightning) self-custodial su Nostr — nessun intermediario.',
qrAlt: "Codice QR dell'offerta CLINK",
copyCode: 'Copia codice CLINK',
openWallet: 'Apri nel wallet CLINK',
copyToWallet: 'Copia il codice per il tuo wallet',
priceFixed: 'Fisso — {{amount}} sats',
priceFixedShort: 'Prezzo fisso',
priceVariable: 'Prezzo variabile',
priceVariableCurrency: 'Prezzato in {{currency}}',
priceSpontaneous: "Scegli tu l'importo",
footnote: 'Scansiona con un wallet compatibile con CLINK (es. ShockWallet). Se non si apre nulla, copia il codice qui sopra — potresti non avere un wallet compatibile con CLINK installato. Nessun custode, nessun server web: la fattura viene richiesta direttamente su Nostr.',
},
paymentReadiness: {
ready: 'Puoi farti pagare',
notReady: 'Configura i pagamenti per farti pagare',
readyBefore: 'Il tuo indirizzo Lightning',
readyAfter: ' è sul tuo profilo — le persone possono zapparti e pagarti direttamente.',
silentSet: ' È impostato anche un indirizzo Bitcoin Silent Payment.',
notReadyBefore: 'Aggiungi un indirizzo Lightning (e facoltativamente un indirizzo Bitcoin Silent Payment) al tuo',
nostrProfile: 'profilo Nostr',
notReadyAfter: 'così gli skater possono pagarti. Si imposta una volta e funziona su tutti i profili che hai qui.',
},
seller: {
trade: 'Scambio',
active: 'Attivo',
markSold: 'Segna venduto',
yourListings: 'I tuoi annunci',
activeCount: '{{count}} attivi',
listItem: 'Elenca un oggetto',
loading: 'Caricamento dei tuoi annunci…',
empty: 'Non hai ancora annunci.',
listFirst: 'Elenca il tuo primo oggetto',
},
noffer: {
label: 'Codice offerta CLINK',
optional: '(opzionale, avanzato)',
offerId: 'Offerta: {{id}}',
relay: 'Relay: {{relay}}',
invalidBefore: 'Questo non sembra un',
invalidAfter: 'codice valido.',
valid: 'Codice CLINK valido — un pulsante "Paga via CLINK" apparirà sul tuo profilo.',
help: 'Incolla un codice di pagamento CLINK self-custodial (es. da ShockWallet / Lightning.Pub) per accettare pagamenti Lightning nativi di Nostr — nessun server web o custode.',
learnSpecs: 'Scopri le specifiche',
},
escrowPanel: {
escrowed: '{{amount}} sats in escrow',
mint: 'Mint',
refundSinceBefore: "L'acquirente può rimborsare da",
redeemBefore: "Il venditore può riscattare ora · l'acquirente rimborsa dopo",
noExpiry: 'Nessuna scadenza impostata su questo token.',
},
escrowRequest: {
enterAmount: "Inserisci un importo per l'escrow",
minLock: 'Blocca per almeno {{days}} giorni',
requestNote: '{{amount}} sats in escrow per il nostro scambio — conferma la vendita.',
created: 'Escrow creato 🎉',
createdBody: '{{amount}} sats bloccati per {{days}} giorni. {{sellerName}} può riscattare alla consegna.',
createFailed: "Impossibile creare l'escrow",
somethingWrong: 'Qualcosa è andato storto.',
title: 'Metti in escrow questo scambio',
description: "I fondi sono bloccati a {{sellerName}} e rimborsabili da te se l'accordo salta dopo la scadenza. Richiede un wallet Lightning collegato.",
amountLabel: 'Importo (sats)',
daysLabel: 'Rimborso acquirente dopo (giorni)',
daysHint: 'Dopo questi giorni puoi recuperare i fondi se il venditore non ha consegnato.',
nativeOnly: "L'escrow Cashu è disponibile solo nell'app SkateSpots (non nella build web).",
lockAndRequest: 'Blocca e richiedi',
},
},
labOptions: {
coach: {
skill: {
basics: 'Basi',
ollies: 'Ollie',
kickflips: 'Kickflip',
grinds: 'Grind e Slide',
manuals: 'Manual',
inverts: 'Invert',
vert: 'Vert/Ramp',
bowl: 'Bowl',
street: 'Street',
freestyle: 'Freestyle',
safety: 'Sicurezza',
diy: 'Moduli Skate DIY',
},
skillDesc: {
basics: 'Spinta, stance, equilibrio, curve',
ollies: 'Ollie e varianti (nollie, fakie)',
kickflips: 'Kickflip, heelflip e varianti',
grinds: '50-50, 5-0, boardslide e altro',
manuals: 'Manual, nose manual, combo',
inverts: 'Invert, handplant, eggplant, andrecht',
vert: 'Half-pipe, quarter-pipe, drop-in',
bowl: 'Carving, pumping e line nel bowl',
street: 'Ostacoli da strada e creatività',
freestyle: 'Trick in flatground e flow',
safety: 'Come cadere, protezioni, prevenzione degli infortuni',
diy: 'Costruire ramp, rail, ledge e altri ostacoli da skate',
},
},
filmer: {
service: {
miniclips: 'Mini clip',
longparts: 'Video part lunghi',
koth: 'Stile King of the Road',
documentaries: 'Documentari',
contests: 'Riprese per contest',
raw: 'Girato grezzo',
followlines: 'Ripresa follow / line',
lines: 'Ripresa line e B-roll',
},
serviceDesc: {
miniclips: 'Clip da 15-60 sec per i social',
longparts: 'Video part completi da 3-10 min con musica',
koth: 'Video skate in stile avventura/sfida',
documentaries: 'Contenuti sulla cultura skate e storie',
contests: 'Copertura professionale di contest e competizioni',
raw: 'Girato multi-angolo non montato',
followlines: 'Follow-cam fisheye per le line',
lines: 'Line con teleobiettivo e b-roll cinematografico',
},
skill: {
vx1000: 'VX1000',
hvx: 'HVX / HPX',
cinema: 'Cinema Camera',
dslr: 'DSLR / Mirrorless',
actioncam: 'GoPro / Action Cam',
phone: 'Ripresa con telefono',
drone: 'Drone / Aereo',
gimbal: 'Gimbal / Stabilizzatore',
fisheye: 'Lente fisheye',
longlens: 'Teleobiettivo',
'4k': '4K / Alto frame rate',
editing: 'Montaggio video',
color: 'Color grading',
},
skillDesc: {
vx1000: 'Estetica classica dello skateboarding VX1000',
hvx: 'Look SD/HD Panasonic HVX/HPX',
cinema: 'Cinema camera (FX3, serie C, RED, BMPCC)',
dslr: 'Fotocamera DSLR o mirrorless di alta qualità',
actioncam: 'POV e supporti GoPro / action cam',
phone: 'Ripresa mobile con smartphone moderni',
drone: 'Riprese aeree e con drone',
gimbal: 'Movimento stabilizzato con gimbal',
fisheye: 'Scatti grandangolari con lente fisheye',
longlens: 'Teleobiettivo per scatti dettagliati',
'4k': 'Risoluzione 4K e slow-mo ad alto frame rate',
editing: 'Montaggio video professionale e post-produzione',
color: 'Correzione colore e grading',
},
},
editor: {
service: {
parts: 'Video part',
montages: 'Montaggi',
reels: 'Reel / clip brevi',
documentaries: 'Documentari',
contest: 'Edit per contest',
brand: 'Video brand / promozionali',
motion: 'Motion graphics',
colorgrade: 'Solo color grading',
},
serviceDesc: {
parts: 'Video part skate completi con colonna sonora',
montages: 'Montaggi compilation da girato grezzo',
reels: 'Clip e reel social da 15–60 sec',
documentaries: 'Film sulla cultura skate guidati da storie',
contest: 'Edit riassuntivi per contest ed eventi',
brand: 'Contenuti promozionali per brand e shop',
motion: 'Titoli, transizioni, effetti e grafiche',
colorgrade: 'Correzione colore e grading basato su LUT',
},
skill: {
premiere: 'Adobe Premiere',
resolve: 'DaVinci Resolve',
finalcut: 'Final Cut Pro',
aftereffects: 'After Effects',
luts: 'LUT personalizzate',
vhs: 'Estetica VHS / retrò',
'4k': 'Flussi di lavoro 4K e RAW',
sound: 'Sound design / mix',
},
skillDesc: {
premiere: 'Montaggio con Adobe Premiere Pro',
resolve: 'Montaggio e grading con DaVinci Resolve',
finalcut: 'Montaggio con Final Cut Pro',
aftereffects: 'Motion graphics e compositing',
luts: 'Sviluppo di look colore personalizzati',
vhs: 'Glitch VHS, super-8, look film retrò',
'4k': 'Flussi di lavoro con camere RAW/LOG ad alta risoluzione',
sound: 'Sincronizzazione musicale, SFX, mastering audio',
},
},
photo: {
service: {
action: 'Action / scatti di trick',
sequence: 'Scatti in sequenza',
portraits: 'Ritratti',
editorial: 'Editoriale / rivista',
product: 'Fotografia prodotto / shop',
events: 'Copertura eventi',
lifestyle: 'Lifestyle / documentario',
prints: 'Stampe e zine',
},
serviceDesc: {
action: "Scatti di picco dell'azione su trick e line",
sequence: 'Sequenze di trick multi-frame',
portraits: 'Ritratti di rider e foto di squadra',
editorial: 'Servizi editoriali pronti per riviste',
product: 'Fotografia di deck, gear e prodotti dello shop',
events: 'Copertura di contest, jam e anteprime',
lifestyle: 'Dietro le quinte e documentario culturale',
prints: 'Stampe fisiche, zine e fotolibri',
},
camera: {
dslr: 'DSLR',
mirrorless: 'Mirrorless',
medium: 'Medio formato',
film35: 'Pellicola 35mm',
filmmedium: 'Pellicola medio formato',
point: 'Point & Shoot',
phone: 'Telefono',
},
lens: {
fisheye: 'Fisheye',
wide: 'Grandangolo',
standard: 'Standard / prime',
telephoto: 'Teleobiettivo',
macro: 'Macro',
zoom: 'Zoom',
},
lighting: {
strobes: 'Flash da studio',
speedlights: 'Speedlight / flash',
profoto: 'Profoto',
elinchrom: 'Elinchrom',
godox: 'Godox',
triggers: 'Trigger remoti',
continuous: 'Luce continua / LED',
reflectors: 'Riflettori / diffusori',
naturallight: 'Solo luce naturale',
},
support: {
tripod: 'Treppiedi',
monopod: 'Monopiede',
lightstands: 'Stativi per luci',
gimbal: 'Gimbal',
bag: 'Rig mobile / borsa',
laptop: 'Tethering in loco',
},
style: {
flashfisheye: 'Flash fisheye',
natural: 'Luce naturale',
bw: 'Bianco e nero',
film: 'Estetica pellicola',
longlens: 'Teleobiettivo',
studio: 'Studio / illuminato',
street: 'Strada / documentario',
},
},
builder: {
service: {
diy: 'Spot DIY',
concrete: 'Skatepark in cemento',
wood: 'Ramp in legno',
bowls: 'Bowl e pool',
transitions: 'Transizioni e quarter',
rails: 'Rail e ledge',
boxes: 'Manny pad e box',
minis: 'Mini ramp',
pumptrack: 'Pump track',
foam: 'Fosse in foam / indoor',
repairs: 'Riparazioni e rifacimenti',
design: 'Design e consulenza',
},
serviceDesc: {
diy: 'Spot DIY della community e build guerrilla',
concrete: 'Skatepark e strutture in cemento gettato',
wood: 'Ramp in legno, launch box e ostacoli',
bowls: 'Bowl, pool e transizioni profonde',
transitions: 'Quarterpipe, bank e transizioni',
rails: 'Rail in acciaio, ledge e strutture per grind',
boxes: 'Manny pad, funbox e strutture da strada',
minis: 'Mini ramp e setup in cortile',
pumptrack: 'Pump track e line di flow',
foam: 'Fosse in foam, resi e strutture per allenamento indoor',
repairs: 'Riparazione, rattoppo e rifacimento di spot esistenti',
design: 'Progetti, disegni e consulenza per la costruzione',
},
skill: {
concretework: 'Cemento / spritz-beton',
welding: 'Saldatura / fabbricazione acciaio',
carpentry: 'Falegnameria / lavorazione del legno',
formwork: 'Casseforme e armature',
masonry: 'Muratura / blocchi',
coping: 'Coping (pool / acciaio)',
surfacing: 'Skatelite / superfici',
earthworks: 'Movimento terra / scavi',
},
scale: {
backyard: 'Cortile / mini',
diycommunity: 'DIY di comunità',
publicpark: 'Skatepark pubblico completo',
indoor: 'Struttura indoor',
event: 'Percorso per eventi / contest',
},
},
artist: {
service: {
boardart: 'Grafiche per tavole',
logos: 'Logo e branding',
posters: 'Poster e volantini',
merch: 'Merch e abbigliamento',
zines: 'Zine e stampa',
illustration: 'Illustrazione',
stickers: 'Sticker e decal',
webdesign: 'Web / digitale',
typography: 'Tipografia / lettering',
animation: 'Animazione / motion',
},
serviceDesc: {
boardart: 'Grafiche per deck e arte sul griptape',
logos: 'Identità di marca, logo e wordmark',
posters: 'Poster di eventi, volantini e grafiche per concerti',
merch: 'Grafiche per t-shirt, felpe e abbigliamento',
zines: 'Zine, editoria e impaginazione',
illustration: 'Illustrazioni personalizzate e character design',
stickers: 'Pacchetti di sticker, decal e slap',
webdesign: 'Siti web, digitale e UI',
typography: 'Lettering a mano e caratteri personalizzati',
animation: 'Motion graphics e animazione',
},
medium: {
digital: 'Digitale / vettoriale',
handdrawn: 'Disegnato a mano',
screenprint: 'Serigrafia',
paint: 'Pittura / acrilico',
collage: 'Collage / misto',
photo: 'Foto / Photoshop',
'3d': '3D / render',
},
tool: {
illustrator: 'Adobe Illustrator',
photoshop: 'Adobe Photoshop',
procreate: 'Procreate',
affinity: 'Affinity',
figma: 'Figma',
blender: 'Blender',
aftereffects: 'After Effects',
clipstudio: 'Clip Studio',
},
},
graffiti: {
style: {
throwups: 'Throw-up',
pieces: 'Piece / burner',
murals: 'Murales',
characters: 'Personaggi',
lettering: 'Lettering / wildstyle',
stencil: 'Stencil',
handstyles: 'Handstyle / tag',
'3dstyle': 'Stile 3D',
abstract: 'Astratto',
},
styleDesc: {
throwups: 'Riempimenti rapidi a due colori',
pieces: 'Piece e burner a colori pieni',
murals: 'Murales e produzioni su larga scala',
characters: 'Lavori con personaggi e figure',
lettering: 'Wildstyle e struttura delle lettere',
stencil: 'Stencil e street art',
handstyles: 'Tag e handstyle',
'3dstyle': 'Lettering 3D e anamorfico',
abstract: 'Astratto e freestyle',
},
medium: {
spray: 'Bombole spray',
rollers: 'Rulli / emulsione',
markers: 'Marker / inchiostri',
brush: 'Pennello / vernice',
digital: 'Digitale / Procreate',
},
context: {
legalwalls: 'Muri legali',
commissions: 'Commissioni',
liveart: 'Live painting',
skateparks: 'Murales negli skatepark',
interiors: 'Interni / shop',
workshops: 'Workshop',
},
},
tattoo: {
style: {
traditional: 'Traditional / old school',
neotraditional: 'Neo-traditional',
fineline: 'Fine line',
blackwork: 'Blackwork',
realism: 'Realismo',
lettering: 'Lettering / script',
illustrative: 'Illustrativo',
skateflash: 'Flash a tema skate',
ignorant: 'Stile ignorant / handpoke',
japanese: 'Giapponese / irezumi',
},
styleDesc: {
traditional: 'Linee decise, classico americano',
neotraditional: 'Traditional con dettagli moderni',
fineline: 'Lavoro delicato a singolo ago',
blackwork: 'Nero pieno e pattern',
realism: 'Fotorealistico e ritratti',
lettering: 'Script, lettering e citazioni',
illustrative: 'Illustrativo e grafico',
skateflash: 'Disegni flash della cultura skate',
ignorant: 'Stile ignorant / naive handpoke',
japanese: 'Tradizionale giapponese / irezumi',
},
method: {
machine: 'Macchinetta',
handpoke: 'Hand-poke / stick & poke',
flash: 'Flash disponibili',
custom: 'Disegni personalizzati',
coverup: 'Coperture',
},
},
trainer: {
focus: {
strength: 'Forza e condizionamento',
mobility: 'Mobilità e flessibilità',
injuryprevention: 'Prevenzione degli infortuni',
rehab: 'Riabilitazione / fisioterapia',
recovery: 'Recupero e bodywork',
balance: 'Equilibrio e stabilità',
cardio: 'Cardio / resistenza',
nutrition: 'Consigli nutrizionali',
},
focusDesc: {
strength: 'Costruire forza e potenza per lo skate',
mobility: 'Range di movimento e flessibilità',
injuryprevention: 'Prehab e riduzione del rischio di infortuni',
rehab: 'Fisioterapia e riabilitazione post-infortunio',
recovery: 'Massaggio, bodywork e recupero',
balance: 'Propriocezione, equilibrio e stabilità',
cardio: 'Condizionamento e resistenza',
nutrition: 'Consigli su alimentazione e nutrizione',
},
injury: {
ankles: 'Caviglie',
knees: 'Ginocchia',
wrists: 'Polsi',
hips: 'Anche',
back: 'Schiena / colonna',
shoulders: 'Spalle',
heelbruise: 'Contusioni al tallone',
concussion: 'Protocollo commozione cerebrale',
},
credential: {
physio: 'Fisioterapista laureato',
osteo: 'Osteopata',
certtrainer: 'Personal trainer certificato',
sportstherapist: 'Terapista sportivo',
massage: 'Massaggiatore',
inperson: 'Di persona',
remote: 'Da remoto / online',
},
},
musician: {
genre: {
punk: 'Punk',
hardcore: 'Hardcore',
metal: 'Metal',
rock: 'Rock',
indie: 'Indie / alt',
hiphop: 'Hip-hop / rap',
electronic: 'Elettronica',
lofi: 'Lo-fi / beat',
reggae: 'Reggae / dub',
ska: 'Ska',
jazz: 'Jazz',
funk: 'Funk / soul',
flamenco: 'Flamenco',
folk: 'Folk / acustico',
experimental: 'Sperimentale',
grunge: 'Grunge',
},
instrument: {
vocals: 'Voce',
guitar: 'Chitarra',
bass: 'Basso',
drums: 'Batteria',
keys: 'Tastiere / synth',
dj: 'DJ / giradischi',
producer: 'Producer / beat',
sax: 'Sax / ottoni',
strings: 'Archi',
other: 'Altro',
},
act: {
solo: 'Artista solista',
band: 'Band',
dj: 'DJ',
producer: 'Producer',
collective: 'Collettivo',
},
},
judge: {
format: {
game_of_skate: 'Game of S.K.A.T.E.',
best_trick: 'Best Trick',
jam: 'Formato jam',
contest: 'Contest / comp',
street_league: 'Stile Street League',
bowl: 'Bowl / vert',
mini_ramp: 'Mini ramp',
park: 'Park',
street: 'Street',
freestyle: 'Freestyle',
world_tour: 'World Destruction Tour',
am_series: 'Am Series / qualifiche',
local_jam: 'Jam locale / grassroots',
online: 'Online / contest IG',
},
specialty: {
head_judge: 'Head judge',
scoring: 'Punteggio / tabulazione',
mc: 'MC / annunciatore',
format_design: 'Progettazione del format',
rules: 'Regole / arbitraggio',
brackets: 'Bracket / batterie',
livestream: 'Giudizio in livestream',
am_scout: 'Scouting am',
},
level: {
local: 'Locale',
regional: 'Regionale',
national: 'Nazionale',
international: 'Internazionale',
pro: 'Circuito pro',
},
},
organizer: {
event: {
street_jam: 'Street jam',
best_trick: 'Best Trick',
game_of_skate: 'Game of S.K.A.T.E.',
contest: 'Contest / comp',
bowl: 'Bowl / vert',
mini_ramp: 'Mini ramp',
park: 'Sessione in park',
demo: 'Demo pro',
clinic: 'Clinic / workshop',
meetup: 'Meetup / cruise',
downhill: 'Downhill / gara',
slalom: 'Slalom',
kids: 'Bambini / giovani',
charity: 'Beneficenza / raccolta fondi',
tour_stop: 'Tappa del tour',
premiere: 'Anteprima video',
market: "Mercato / mostra d'arte",
},
service: {
organizing: 'Organizzazione completa',
hosting: 'Conduzione / MC',
permits: 'Permessi e autorità',
sponsorship: 'Sponsorizzazioni / accordi con brand',
promotion: 'Promozione e marketing',
livestream: 'Livestream / copertura',
sound: 'Audio e musica',
ramps: 'Ramp e ostacoli',
safety: 'Sicurezza e primo soccorso',
vendors: 'Cibo e venditori',
media: 'Copertura foto / video',
registration: 'Iscrizioni e bracket',
},
scale: {
grassroots: 'Grassroots',
local: 'Locale',
regional: 'Regionale',
national: 'Nazionale',
international: 'Internazionale',
pro: 'Circuito pro',
},
},
barber: {
service: {
haircut: 'Taglio di capelli',
fade: 'Fade',
beard: 'Rifinitura barba',
lineup: 'Line-up / shape-up',
colour: 'Colore e tinta',
kids: 'Tagli per bambini',
},
serviceDesc: {
haircut: 'Un taglio classico — macchinetta e forbici.',
fade: 'Un fade graduato — basso, medio o alto.',
beard: 'Rifinitura, modellatura e sistemazione della barba.',
lineup: "Bordi puliti intorno all'attaccatura e al collo.",
colour: 'Colore, decolorazione, tinta e tonalizzazione.',
kids: 'Tagli pazienti per gli skater più giovani.',
},
style: {
skin_fade: 'Skin fade',
taper: 'Taper',
buzz: 'Taglio a macchinetta',
mohawk: 'Mohawk',
mullet: 'Mullet',
curly: 'Ricci / afro',
long: 'Capelli lunghi / scalati',
classic: 'Taglio classico a forbice',
},
setting: {
shop: 'Shop / barbiere',
mobile: 'Mobile / a domicilio',
event: 'Event skate e contest',
},
},
transport: {
vehicle: {
car: 'Auto',
taxi: 'Taxi / ridesharing',
van: 'Furgone / Minibus',
moto: 'Moto',
helicopter: 'Elicottero',
plane: 'Aereo',
boat: 'Barca',
other: 'Altro veicolo',
},
service: {
people: 'Persone',
goods: 'Merci / carico',
gear: 'Attrezzatura da skate',
airport: 'Transfer aeroportuale',
venue: 'Transfer per evento / location',
tours: 'Tour / road trip',
logistics: 'Logistica eventi',
other: 'Altro servizio',
},
feature: {
cargo: 'Spazio di carico',
bike_board: 'Portabici / porta tavola',
wheelchair: 'Accesso per sedie a rotelle',
pets: 'Animali ammessi',
border: 'Attraversamento confine',
night: 'Guida notturna',
covered: 'Coperto / resistente al meteo',
group: 'Gruppi numerosi',
}
},
tour: {
skill: {
beginner: {
label: 'Principiante',
description: 'Nuovo allo skate o trick di base',
},
intermediate: {
label: 'Intermedio',
description: 'A proprio agio sulla maggior parte dei terreni',
},
advanced: {
label: 'Avanzato',
description: 'Skater esperto, spot tosti',
},
all: {
label: 'Tutti i livelli',
description: 'Adatto a tutti',
},
},
},
},
};
export default itBatch6;