SkateSpots/src/i18n/ro/drift.ts
SkateSpots 9a5b706b1a i18n: close the drift — all 20 locales back to 100%
245 keys had accumulated in en/es only (trustUi, labOptions, cordnUi, socialUi,
walletUi, marketTerms, …), leaving every other locale at 97%. Backfilled 245x20 =
4,900 strings into src/i18n/<lang>/drift.ts and merged them through a new shared
src/i18n/deepMerge.ts — a shallow ...drift spread would clobber existing
namespaces, so index.ts deep-merges instead. Verified: check-i18n all 20 at 100%,
tsc + eslint clean.
2026-10-13 19:14:17 +07:00

319 lines
16 KiB
TypeScript

/**
* ro — drift fill (245 keys added after en/es only).
* Nested fragment spread additively into `ro/index.ts`.
*/
const drift = {
"nav": {
"searchLanguages": "Caută limbi...",
"noLanguages": "Nu s-au găsit limbi"
},
"mapPage": {
"searchSuggestPlaces": "Locuri"
},
"mapUi": {
"firstRunTitle": "Începe",
"firstRunAddSpot": "Adaugă primul tău spot",
"firstRunJoinCrew": "Alătură-te unui crew",
"firstRunStartCrew": "Începe-ți crew-ul",
"firstRunWallet": "Configurează-ți portofelul",
"forecastDays": "Prognoză pe {{count}} zile"
},
"spotUi": {
"forecastDays": "Prognoză pe {{count}} zile"
},
"marketUi": {
"trades": {
"stateRevoked": "Revocat",
"stateVerifying": "Se verifică"
},
"loadFailed": "Nu s-au putut atinge relay-urile. Verifică conexiunea și încearcă din nou.",
"statusPending": "În așteptare",
"offers": {
"closeDeal": "Închide tranzacția",
"loadFailed": "Ofertele nu s-au putut încărca. Verifică conexiunea și încearcă din nou."
},
"pay": {
"nonSats": "Această ofertă este cotată în {{currency}}. Plata în aplicație este doar în sats. Rezolvă direct cu vânzătorul.",
"unsupported": "Acest cod de plată (o cerere Cashu) nu este încă acceptat. Cere vânzătorului o factură Lightning sau o adresă."
},
"escrowRequest": {
"lockedNotSent": "Fondurile sunt blocate în escrow și salvate pe acest dispozitiv, dar cererea nu s-a trimis. Redeschide anunțul pentru a reîncerca. Nu plăti din nou.",
"mintLabel": "Mint (unde sunt blocate fondurile)",
"sellerMintHint": "Vânzătorul preferă acest mint; fondurile blocate aici îi sunt cel mai ușor de revendicat.",
"mintHint": "Escrow-ul se află la acest mint. Vânzătorul revendică aici, așa că alege unul în care aveți încredere amândoi.",
"noMints": "Nu există mint-uri disponibile",
"p2pkUnsupported": "Acest mint nu anunță suport P2PK (NUT-11), așa că escrow-ul nu poate fi blocat aici. Alege alt mint."
}
},
"labUi": {
"offerClothing": "Oferă îmbrăcăminte",
"tabClothing": "Îmbrăcăminte",
"empty": {
"clothingTitle": "Încă niciun designer de îmbrăcăminte",
"clothingBody": "Fii primul care oferă haine personalizate, echipamente de echipă și apparel pentru scenă."
},
"craftFields": {
"sizing": "Gamă de mărimi",
"samples": "Mostre / prototipuri",
"customization": "Personalizare"
}
},
"socialUi": {
"coordinator": {
"ourDefaultTitle": "Coordonator SkateSpots",
"ourDefaultDesc": "SkateSpots rulează un coordonator la relay.skate-spots.org. Folosește-l implicit sau rulează-l pe al tău — un coordonator vede doar text cifrat și metadate, niciodată mesajele tale.",
"useOurs": "Folosește coordonatorul SkateSpots"
},
"crewCoordinator": {
"encryptedChat": "Chat criptat",
"privateChatName": "Chat privat",
"privateChatDesc": "Chat de grup cu forward secrecy (MLS) printr-un coordonator.",
"privateChatDescFull": "Chatul privat este creat o dată de un admin, apoi membrii se alătură.",
"chatRowDesc": "Toți din crew — sigilat cu cheia fiecărui membru (NIP-17).",
"openChat": "Deschide",
"setUpChat": "Configurează",
"joinChat": "Alătură-te",
"checking": "Se verifică…",
"openInAnotherApp": "Deschide în altă aplicație",
"openInCordnWeb": "Cordn (web)",
"openCordnGroup": "Deschide chatul crew-ului",
"copyForStaircase": "Copiază pentru Staircase"
},
"dms": {
"refresh": "Reîmprospătează",
"crews": "Crews",
"crewFounder": "Fondator",
"crewMember": "Membru",
"crewOpen": "Deschide",
"crewSetUp": "Configurează"
},
"form": {
"cordnGroup": "Grup Cordn",
"cordnGroupHint": "Opțional: lipește linkul grupului din Staircase sau Cordn web. Crew-ul tău primește atunci chat MLS real end-to-end, găzduit pe coordonatorul nostru."
}
},
"settingsUi": {
"settingsPage": {
"trust": "Încredere",
"trustSub": "Surse și afișare"
}
},
"walletUi": {
"trust": {
"mute": "Oprește sunetul",
"muted": "Fără sunet",
"mutedDesc": "Nu le vei vedea conținutul.",
"muteFailed": "Nu s-a putut opri sunetul. Încearcă din nou.",
"loginToMute": "Autentifică-te pentru a opri sunetul.",
"attributedNetwork": "De la persoane din rețeaua ta",
"attributedProviderHouse": "De la furnizorul de încredere al comunității",
"attributedProviderCustom": "De la furnizorul pe care l-ai ales",
"howItWorks": "Cum funcționează încrederea",
"flaggedNoticeTitle": "Raportat de skateri de încredere",
"flaggedNoticeDesc": "Ai grijă. Persoane de încredere din rețea au raportat acest cont.",
"flaggedReporterFollow": "{{count}} pe care îi urmărești",
"flaggedReporterNetwork": "{{count}} din rețeaua ta",
"flaggedReporterOther": "{{count}} alte conturi",
"flaggedReport": "Raportează",
"flaggedDismiss": "Respinge",
"bucketVerified": "Verificat",
"bucketUnknown": "Necunoscut",
"bucketFlagged": "Semnalat",
"bucketVerifiedDesc": "Cineva din rețeaua ta garantează pentru acest cont.",
"bucketUnknownDesc": "Nimeni din rețeaua ta nu a garantat încă pentru acest cont.",
"bucketFlaggedDesc": "Persoane de încredere au raportat acest cont.",
"reportedByTrusted": "Raportat de {{count}} persoane de încredere"
}
},
"trustUi": {
"alertsTitle": "Alerte de rețea",
"alertsDesc": "Conturi pe care le urmărești și pe care persoane de încredere le-au raportat sau le-au pus pe silențios.",
"alertsEmpty": "Nicio alertă. Verificăm conturile pe care le urmărești pentru raportări de la persoane de încredere.",
"alertsReported": "Raportat de {{count}} persoane de încredere",
"alertsMuted": "Fără sunet din partea a {{count}} persoane de încredere",
"alertsIgnore": "Ignoră",
"alertsUnfollow": "Nu mai urmări",
"alertsLogin": "Autentifică-te pentru a vedea alertele pentru conturile pe care le urmărești.",
"providerTitle": "Furnizor",
"providerDesc": "Scorurile vin de la un furnizor pe care îl alegi. Furnizorul comunității este implicit.",
"useCommunity": "Folosește furnizorul comunității",
"setProvider": "Setează un furnizor",
"customPubkeyPlaceholder": "npub sau cheie publică hex a furnizorului",
"customRelayPlaceholder": "wss://relay.example.com",
"invalidProvider": "Introdu un npub valid sau o cheie publică hex de 64 de caractere și un relay wss://.",
"publishFailed": "Furnizorul nu a putut fi publicat. Încearcă din nou.",
"providerSaved": "Furnizor actualizat.",
"loggedOutProvider": "Autentifică-te pentru a alege un furnizor.",
"showMarks": "Arată marcajele de încredere",
"showMarksDesc": "Marcaje verificate și necunoscute. Raportările se afișează mereu.",
"sourceLabel": "Sursă",
"sourceHouse": "Furnizorul de încredere al comunității",
"sourceCustom": "Furnizorul tău",
"loggedOut": "Autentifică-te pentru a-ți alege propriul furnizor de încredere.",
"seoTitle": "Cum funcționează încrederea",
"seoDescription": "Cum afișează SkateSpots încrederea: trei stări, de unde vin scorurile și de ce absența nu înseamnă neîncredere.",
"title": "Cum funcționează încrederea",
"intro": "Încrederea aici este un semnal, nu o sentință. Vine de la cine îi cunoști sau de la un furnizor pe care îl alegi. Nu clasificăm oamenii la nivel global.",
"statesTitle": "Trei stări",
"verifiedTitle": "Verificat",
"verifiedDesc": "Cineva din rețeaua ta garantează pentru acest cont: un prieten al unui prieten sau furnizorul tău ales.",
"unknownTitle": "Necunoscut",
"unknownDesc": "Nimeni nu a garantat încă. Aici începe fiecare cont nou.",
"flaggedTitle": "Semnalat",
"flaggedDesc": "Persoane de încredere au raportat acest cont. Este un avertisment să te uiți mai atent, nu o dovadă pentru nimic.",
"absenceTitle": "Lipsa unei insigne nu înseamnă neîncredere",
"absenceDesc": "Majoritatea conturilor nu arată nimic. Asta înseamnă că nimeni din rețeaua ta nu a garantat încă pentru ele, nu că ceva este în neregulă. Nu interpreta niciodată un marcaj lipsă ca pe un lucru negativ.",
"sourceTitle": "Cine îl calculează",
"sourceDesc": "Implicit folosim propria ta rețea. Poți alege și un furnizor de încredere care publică scoruri semnate prin Nostr (NIP-85) sau poți opri afișarea. Semnalat se afișează mereu, pentru că este un semnal de siguranță.",
"endorsementTitle": "Prezența nu este o susținere",
"endorsementDesc": "Un marcaj verificat înseamnă că cineva a garantat, nu că persoana este bună. Un marcaj înseamnă că persoane de încredere au raportat-o, nu că este vinovată. Verifică detaliile înainte de a decide.",
"povTitle": "Depinde de punctul de vedere",
"povDesc": "Un scor este relativ la cine se uită. Un rang de la un furnizor sau o persoană nu este comparabil cu altul și nu îl prezentăm niciodată ca pe un fapt obiectiv.",
"settingsCta": "Gestionează în Setări"
},
"marketTerms": {
"link": "Regulile Marketplace",
"seoTitle": "Regulile Marketplace",
"seoDescription": "Cum funcționează anunțurile de echipament SkateSpots: peer-to-peer, cumpărătorul să fie atent, și regulile.",
"title": "Regulile Marketplace",
"intro": "SkateSpots este o tablă de echipament peer-to-peer. Tratezi direct cu cealaltă persoană: nu ținem fonduri, nu expediem articole și nu rezolvăm dispute.",
"howTitle": "Cum funcționează",
"howBody": "Listează echipament, contactează vânzătorul într-un mesaj privat și rezolvă direct (numerar, Lightning sau un schimb). Nu există coș sau checkout.",
"rulesTitle": "Ce nu este permis",
"rulesBody": "Fără conținut ilegal, periculos sau pentru adulți; fără droguri, arme, produse contrafăcute sau furate. Ține anunțurile despre echipament de skate și articole conexe.",
"respectTitle": "Fii respectuos",
"respectBody": "Fără abuz, hărțuire, amenințări sau ură. Moderatorii pot ascunde anunțuri sau conturi.",
"trustTitle": "Încrederea este un ghid, nu o garanție",
"trustBody": "Marcajele de verificare și reputația de tranzacționare sunt semnale din rețea, nu promisiuni. Fă-ți propriile verificări înainte de a tranzacționa.",
"trustLink": "Cum funcționează încrederea",
"privacyLink": "Ce pleacă de pe dispozitivul tău",
"safetyTitle": "Tranzacționează în siguranță",
"safetyBody": "Întâlnește-te în public pentru predare, folosește escrow sau un depozit de bună-credință pentru livrări și nu trimite niciodată bani în afara aplicației.",
"moderationTitle": "Moderarea este blândă și reversibilă",
"moderationBody": "Conținutul ascuns rămâne pe relay-uri și poate fi restaurat; disputele dintre oameni sunt ale tale de rezolvat."
},
"labOptions": {
"clothing": {
"service": {
"tees": "Tricouri",
"hoodies": "Hanorace și treninguri",
"pants": "Pantaloni și șorturi",
"jackets": "Jachete și haine de exterior",
"kits": "Echipamente și tricouri de echipă",
"caps": "Șepci și căciuli",
"socks": "Șosete",
"accessories": "Genți și accesorii",
"footwear": "Încălțăminte și pantofi",
"patches": "Patch-uri și aplicații",
"griptape": "Griptape și îmbrăcăminte pentru deck",
"onepiece": "Piese unicate / upcycled"
},
"serviceDesc": {
"tees": "Tricouri și topuri personalizate",
"hoodies": "Hanorace, treninguri și pantaloni de trening",
"pants": "Pantaloni de lucru, cargo și șorturi",
"jackets": "Jachete de antrenor, shell și de lucru",
"kits": "Echipamente, tricouri și uniforme de echipă",
"caps": "Șepci, căciuli și acoperitoare de cap",
"socks": "Șosete și tricotaje",
"accessories": "Genți, curele și obiecte mici",
"footwear": "Pantofi și încălțăminte personalizată",
"patches": "Patch-uri brodate și aplicații",
"griptape": "Artă pe griptape și îmbrăcăminte pentru deck",
"onepiece": "Piese singulare și haine upcycled"
},
"method": {
"screenprint": "Serigrafie",
"dtg": "DTG / direct-to-garment",
"embroidery": "Broderie",
"cutsew": "Cut & sew",
"sublimation": "Sublimare",
"heattransfer": "Heat transfer / vinil",
"garmentdye": "Vopsire vestimentară",
"knit": "Tricotaj",
"patchwork": "Patchwork",
"allover": "Print all-over"
},
"material": {
"cotton": "Bumbac",
"heavyweight": "Greutate mare",
"organic": "Organic / durabil",
"fleece": "Fleece",
"denim": "Denim",
"canvas": "Canvas",
"nylon": "Nylon / tehnic",
"wool": "Merino / lână",
"leather": "Piele",
"recycled": "Reciclat / deadstock"
}
}
},
"becomeRolesUi": {
"clothing": {
"seoTitle": "Devino designer de îmbrăcăminte - SkateSpots",
"seoDescription": "Haine personalizate, echipamente de echipă și apparel pentru scenă.",
"heading": "Designer de îmbrăcăminte",
"tagline": "Haine personalizate, echipamente de echipă și apparel pentru scenă",
"noun": "designer de îmbrăcăminte",
"rateLabel": "Tarif",
"portfolioLabel": "Link magazin / portofoliu",
"sectionWhatYouMake": "Ce realizezi",
"sectionHowYouMake": "Cum realizezi",
"sectionMaterials": "Materiale",
"minimumPlaceholder": "de ex. 10 bucăți",
"turnaroundPlaceholder": "de ex. 2-3 săptămâni",
"sizingPlaceholder": "de ex. XS-3XL / la comandă",
"samplesHelper": "Oferi mostre sau prototipuri înainte de o serie completă?",
"customizationPlaceholder": "de ex. nume, numere, grafică"
}
},
"weatherUi": {
"updated": "Actualizat",
"refresh": "Reîmprospătează",
"unavailable": "Vremea indisponibilă.",
"retry": "Reîncearcă",
"sunrise": "Răsărit",
"sunset": "Apus",
"legendTitle": "Scor meteo",
"legendWeatherOnly": "Doar vremea"
},
"cordnUi": {
"title": "Chat privat",
"subtitle": "Criptat end-to-end (MLS) între membrii crew-ului. Coordonatorul transportă doar text cifrat și metadate — nu vede niciodată conținutul mesajelor.",
"notLoggedIn": "Autentifică-te pentru a folosi chatul privat al crew-ului.",
"membersOnly": "Doar membrii crew-ului pot deschide chatul privat.",
"connecting": "Se conectează…",
"noCoordinator": "Nu este configurat încă un coordonator pentru acest crew.",
"noGroupAdmin": "Chatul privat al acestui crew nu a fost încă creat.",
"noGroupMember": "Nu ești încă în chatul privat al acestui crew.",
"create": "Creează chatul privat",
"requestJoin": "Cere să te alături",
"checkInvite": "Verifică invitația",
"requested": "Cerere trimisă — un admin de crew o va aproba.",
"noInvite": "Nicio invitație în așteptare încă. Cere unui admin să aprobe cererea ta.",
"placeholder": "Trimite un mesaj crew-ului…",
"send": "Trimite",
"refresh": "Reîmprospătează",
"requests": "Cereri de alăturare",
"checkRequests": "Verifică cererile",
"approve": "Adaugă",
"noRequests": "Nicio cerere de alăturare în așteptare.",
"inviteHint": "Momentan doar tu ești în acest chat — membrii crew-ului pot apăsa „Cere să te alături”, apoi îi aprobi aici.",
"memberCount": "{{count}} în grup",
"you": "Tu",
"groupRef": "Link de grup",
"copyRef": "Copiază",
"copied": "Copiat",
"attachImage": "Atașează imagine",
"uploading": "Se încarcă…",
"uploadFailed": "Imaginea nu a putut fi încărcată.",
"bannerTitle": "Acest crew nu are încă un chat privat",
"bannerBody": "Configurează chat criptat end-to-end (MLS) pentru crew-ul tău — membrii se alătură din filă.",
"bannerCta": "Configurează",
"ready": "Conectat · MLS",
"errorPrefix": "Coordonatorul nu a putut fi contactat",
"interactiveHint": "Signerul tău cere aprobare la fiecare acțiune — folosește Reîmprospătează și Trimite după nevoie."
}
};
export default drift;