cautpartener / client / src / app / locales / hu.ts
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
import type { ro } from "./ro";

/** Hungarian — key parity with ro.ts is enforced by the `satisfies` check. */
export const hu = {
  appName: "Caut Partener",
  tabFeed: "Hírfolyam",
  tabChats: "Csevegések",
  tabContacts: "Kapcsolatok",
  tabProfile: "Profil",
  statusChecking: "kapcsolat ellenőrzése…",
  statusOnline: "kapcsolódva",
  statusOffline: "offline",
  comingSoonTitle: "Hamarosan",
  comingSoonBody: "Ez a rész egy későbbi szakaszban érkezik.",
  panelFeedHint: "Itt jelennek majd meg a nyilvános bejegyzések és a kapcsolataid bejegyzései.",
  panelChatsHint: "Itt jelennek majd meg a végpontok között titkosított beszélgetéseid.",
  panelContactsHint: "Itt jelennek majd meg az ellenőrzött kapcsolataid.",
  panelProfileHint: "Itt hozod majd létre és kezeled a profilodat.",
  backHome: "Vissza a kezdőlapra",
  updateReady: "Új verzió ({version}) áll készen — koppints a frissítéshez",
  updateReadyGeneric: "Új verzió áll készen — koppints a frissítéshez",
  updating: "frissítés…",
  versionLabel: "{version} verzió",
  langToggle: "Nyelv váltása",

  // identity onboarding
  onbTitle: "Az identitásod",
  onbIntro:
    "A Caut Partenernek nincsenek fiókjai és központi szerverei sem. Az identitásod egy titkos kulcs, amelyet csak a saját eszközeid őriznek — most létrehozod, vagy áthozod egy másik eszközről.",
  onbCreate: "Identitás létrehozása",
  onbImport: "Már van identitásom",
  onbCreateImportHint:
    "Használtad már a Caut Partenert ezen az eszközön? Importáld az identitásodat, ahelyett hogy újat hoznál létre.",
  onbPersistWarn:
    "A böngésző hosszabb használaton kívüli időszak után törölheti az alkalmazás adatait — az elmentett titkos kulcs az egyetlen módja a helyreállításnak.",
  onbSeedTitle: "A titkos kulcsod",
  onbSeedExplain:
    "Ez a kulcs MAGA az identitásod. Mentsd el most egy jelszókezelőbe, vagy írd fel papírra — ha elveszíted az eszközt, egyedül a kulccsal tudod visszaszerezni az identitásodat. Senki sem tudja visszaállítani.",
  onbFingerprintHint: "az identitásod ujjlenyomata — ez a 4 emoji azonosít téged vizuálisan",
  copySeed: "Kulcs másolása",
  copied: "Másolva",
  copyFailed: "A másolás nem sikerült — másold ki kézzel",
  onbSavedCheck: "Elmentettem a kulcsot egy biztonságos helyre",
  onbLast4Label: "Írd be a kulcs utolsó 4 karakterét",
  onbLast4Bad: "A karakterek nem egyeznek a fenti kulccsal",
  onbContinue: "Tovább",
  onbPersistFailed: "A mentés nem sikerült — próbáld újra",
  onbImportTitle: "Identitás importálása",
  onbImportExplain:
    "Illeszd be a másik eszközön elmentett 43 karakteres kulcsot, vagy olvasd be a QR-kódját. Utána ellenőrizd, hogy az emoji-ujjlenyomat az-e, amire számítasz.",
  onbImportPlaceholder: "identitáskulcs (43 karakter)…",
  onbImportInvalid: "Ez nem érvényes kulcs — pontosan 43 karakterből áll (betűk, számjegyek, - és _).",
  onbImportConfirm: "Ezt az identitást használom",
  onbScanQr: "QR-kód beolvasása",
  onbScanFail: "A kamerát nem sikerült elindítani",
  back: "Vissza",

  // wiped-storage recovery
  recTitle: "A tárhely törlődött",
  recBody:
    "A böngésző törölte az alkalmazás adatait — iOS-en ez hosszabb használaton kívüli időszak után történik meg. Az identitásod NEM veszett el, ha elmentetted a titkos kulcsodat: importáld a kulcsot, és minden újraszinkronizálódik.",
  recImport: "Elmentett kulcs importálása",
  recStartOver: "Nincs meg többé a kulcs — új identitást kezdek",
  recStartOverConfirm:
    "Kulcs nélkül a régi identitás, a kapcsolatai és a profilja nem állíthatók helyre. Biztosan a nulláról kezded?",
  recStartOverYes: "Igen, a nulláról kezdem",
  cancel: "Mégse",
  closeSheet: "Bezárás",

  // profile tab
  profIdentityTitle: "Az identitásod",
  profNoIdentity: "Nincs identitás ezen az eszközön.",
  profPub: "Nyilvános kulcs",
  profLink: "A profilod linkje",
  copyLink: "Link másolása",
  linkCopied: "Link másolva",
  profExport: "Identitás exportálása",
  profExportWarn:
    "A titkos kulcs megjelenik a képernyőn (szövegként és QR-kódként). Óvd a képernyőt az idegen tekintetektől — bárki, aki látja a kulcsot, átveheti az identitásodat.",
  profExportShow: "Kulcs megjelenítése",
  profLang: "Nyelv",
  profSync: "Szinkronizálás az eszközök között",
  syncStarting: "a szinkronizálás indul…",
  syncNoMailbox: "a szinkronizálási szolgáltatás nem érhető el",
  syncQueued: "{n} művelet várakozik",
  syncUpToDate: "minden elküldve",
  syncLastReplay: "utolsó fogadás: {n} művelet, {time}",
  syncNoReplayYet: "más eszközökről még nem érkezett semmi",
  syncGap: "Hiányos előzmények — a többi eszközöd némely adata lejárt, mielőtt szinkronizálódhatott volna.",
  syncPersistOn: "tartós tárhely bekapcsolva",
  syncPersistOff: "a böngésző elutasította a tartós tárhelyet",
  syncPersistUnknown: "tartós tárhely: ismeretlen",

  // contacts tab (M2)
  ctStarting: "a kapcsolatok betöltődnek — a szinkronizálás indul…",
  ctSearchPh: "keresés a kapcsolatok között…",
  ctEmpty: "Még nincs egy kapcsolatod sem. Hívj meg valakit, vagy fogadj el egy kapott meghívót.",
  ctNoMatch: "Egyetlen kapcsolat sem felel meg a keresésnek.",
  ctInvite: "Kapcsolat meghívása",
  ctReceived: "Meghívót kaptam",
  ctPendingTitle: "Függőben lévő meghívók",
  ctPendingHint: "Aki megnyitja a linket, itt jelenik meg megerősítésre.",
  ctPendingExpires: "lejár {time} múlva",
  ctExpDh: "{d}n {h}ó",
  ctExpH: "{h}ó",
  ctExpSoon: "egy órán belül",
  ctInviteNameLabel: "A neved, ahogy a kapcsolatod látni fogja",
  ctInviteNamePh: "a neved…",
  ctInviteTitle: "Kapcsolatmeghívó",
  ctInviteExplain:
    "Küldd el ezt a linket a kapcsolatodnak (vagy mutasd meg neki a QR-kódot). Többen is elfogadhatják, és {hours} óra múlva lejár.",
  ctInviteFailed: "A meghívót nem sikerült közzétenni — ellenőrizd az internetkapcsolatot, és próbáld újra.",
  ctPasteTitle: "Meghívó elfogadása",
  ctPasteExplain: "Illeszd be a kapott meghívólinket, vagy olvasd be a kapcsolatod QR-kódját.",
  ctPastePh: "https://cautpartener.ro/#/add/…",
  ctPasteInvalid: "Ez nem érvényes meghívólink.",
  ctOpenInvite: "Meghívó megnyitása",
  ctGroupsTitle: "Csoportok",
  ctGroupCreate: "Új csoport",
  ctGroupNamePh: "a csoport neve…",
  ctGroupMembers: "{n} tag",
  ctGroupRename: "Átnevezés",
  ctGroupDelete: "Csoport törlése",
  ctGroupDeleteConfirm: "A(z) „{name}” csoport törlődik. A kapcsolatai megmaradnak a címjegyzékedben.",
  ctGroupEmpty: "Még nincsenek tagok — pipáld be a csoportot egy kapcsolat adatlapján.",
  ctNoGroups: "Még nincs egy csoportod sem. A csoportok segítenek szelektíven megosztani a profilodat és a bejegyzéseidet.",
  ctDetailGroups: "A kapcsolat csoportjai",
  ctAllContactsChip: "automatikus",
  ctAllContactsAuto: "automatikus csoport — a címjegyzékedet követi; nincs kézi pipa",
  ctAllContactsNote:
    "A „Minden kapcsolat” csoportot az alkalmazás automatikusan tartja karban: a címjegyzékedet követi, és nem nevezhető át, nem törölhető. Egy később hozzáadott kapcsolat megkapja a kapcsolatoknak már közzétett tartalmat is, a törölt pedig megtartja, amit látott — a kulcs csak a jövőbeli tartalomhoz változik. Ha szeretnéd, kézzel kizárhatsz egy kapcsolatot az automatikus csoportból — a kizárást az alkalmazás tiszteletben tartja (nem íratja vissza automatikusan), és a kulcs a jövőbeli tartalomhoz megváltozik.",
  ctAllContactsExclude: "Kizárás az automatikus csoportból",
  ctAllContactsExcluded: "kézzel kizárva az automatikus csoportból",
  ctRenamePh: "helyi név…",
  ctRemove: "Kapcsolat törlése",
  ctRemoveConfirm: "„{name}” törlődik a kapcsolataid közül, az összes eszközödön.",
  ctDetailLink: "Profillink",
  ctSave: "Mentés",
  ctAdded: "Kapcsolat hozzáadva",
  ctRemovedToast: "Kapcsolat törölve",

  // accept-invite flow (#/add/…)
  addLoading: "a meghívó keresése…",
  addCompareTitle: "Ellenőrizd az ujjlenyomatot",
  addCompareBody:
    "Hasonlítsd össze a 4 emojit a kapcsolatodéval — nála a Profil fülön jelennek meg. Csak akkor erősítsd meg, ha azonosak; így győződhetsz meg róla, hogy senki sem férkőzött közétek.",
  addConfirm: "Megerősítem — az emojik azonosak",
  addOwnLink: "Ez a saját meghívólinked — küldd el egy kapcsolatodnak; te magad nem fogadhatod el.",
  addKnown: "{name} már a kapcsolataid között van.",
  addBadLink: "Érvénytelen meghívólink.",
  addNotFound:
    "A meghívó nem található — lehet, hogy lejárt ({hours} óra után), vagy még nem szinkronizálódott. Próbáld újra pár pillanat múlva.",
  addRetry: "Keresés újra",
  addDepositFailed: "A névjegyedet nem sikerült elküldeni — ellenőrizd az internetkapcsolatot, és próbáld újra.",
  addSuccess: "{name} bekerült a kapcsolataid közé.",
  addGoContacts: "Kapcsolatok megtekintése",

  // ambiguous rendezvous identity (≥2 xPubs for the same pub in one room)
  addAmbiguous:
    "A meghívó egymásnak ellentmondó kulcsokat tartalmaz ugyanahhoz az identitáshoz — a link kompromittálódhatott. Kérj a személytől új meghívólinket, egy másik csatornán.",
  ctAmbiguousWarn:
    "Egy meghívóhoz egymásnak ellentmondó kulcsok érkeztek ugyanahhoz az identitáshoz ({n}) — a link kompromittálódhatott. Kérj a személytől új linket.",
  ctPartialSync: "hiányos szinkronizálás — némelyik kérés hiányozhat; próbáld újra később",

  // creator-side pending-invite confirmation
  inviteJoined: "{name} elfogadta a meghívódat",
  ctQueuedTitle: "Várakozó kérések",
  ctQueuedHint: "Túl sok kérés egyszerre — ellenőrizd őket egyenként, mindegyiket a saját ujjlenyomatával.",
  ctQueuedReview: "Ellenőrzés",
  ctQueuedDismiss: "Elutasítás",

  // conversations (M3)
  chatStarting: "a beszélgetések betöltődnek — a szinkronizálás indul…",
  chatEmpty:
    "Még nincs egy beszélgetésed sem. Minden ellenőrzött kapcsolat egy beszélgetés — adj hozzá kapcsolatokat a Kapcsolatok fülön.",
  chatStartHint: "kezdd el a beszélgetést",
  chatYou: "én",
  chatNewGroup: "Új csoport",
  chatGroupPick: "Válaszd ki a tagokat (legfeljebb {n} fő összesen, veled együtt)",
  chatGroupTooMany: "Túl sok tag — legfeljebb {n}, veled együtt.",
  chatGroupNeedMembers: "Egy csoporthoz legalább egy ellenőrzött kapcsolat kell.",
  chatGroupCreate: "Csoport létrehozása",
  chatGroupCreated: "Csoport létrehozva",
  chatGroupFailed: "A csoportot nem sikerült létrehozni — próbáld újra.",
  chatMembers: "{n} tag",
  chatGroupEvictNote:
    "Ebben a verzióban a csoportok tagsága rögzített: aki megkapta a szoba kulcsát, megtartja. Ha ki akarsz zárni valakit, hozz létre egy új csoportot nélküle.",
  chatOpening: "a beszélgetés megnyílik…",
  chatUnknownConv: "A beszélgetés nem található.",
  chatNoMessages: "Még nincs üzenet — írd meg az elsőt.",
  chatMsgPh: "írj üzenetet…",
  chatSend: "Küldés",
  chatToday: "ma",
  chatYesterday: "tegnap",
  chatHideTitle: "Üzenet helyi törlése",
  chatHideBody:
    "Az üzenet csak erről az eszközről tűnik el — a többi tag megtartja a saját másolatát. Egy szerverek nélküli hálózat nem tud visszavonni egy már elküldött üzenetet.",
  chatHide: "Törlés helyben",

  // media messages (M3b)
  chatAttach: "Fénykép küldése",
  chatMic: "Hangüzenet",
  chatImgPreviewTitle: "Elküldöd a fényképet?",
  chatImgFailed: "A fényképet nem sikerült beolvasni — ez a böngésző nem támogatja a formátumát.",
  chatImgTooBig: "A fényképet nem sikerült eléggé tömöríteni — próbálj egy másikat.",
  chatImgLoading: "betöltés…",
  chatImgUnavailable: "a fénykép még nem érhető el — lekérés folyamatban a többi tagtól",
  chatVoiceUnsupported: "A hangfelvétel nem érhető el ebben a böngészőben.",
  chatMicDenied: "A mikrofont nem sikerült elindítani — ellenőrizd a böngésző engedélyét.",
  chatVoiceUnavailable: "a hangüzenet még nem érhető el",
  chatRecording: "felvétel…",
  chatOnlineNow: "most online",

  // activity categories (public profiles, M4; feed shards, M5)
  catGeneral: "Általános",
  catSport: "Sport",
  catDrumetii: "Túrázás",
  catCalatorii: "Utazás",
  catDans: "Tánc",
  catArta: "Művészet és kultúra",
  catJocuri: "Játékok",
  catGastronomie: "Gasztronómia",
  catInvatare: "Tanulás",
  catMuzica: "Zene",
  catAfaceri: "Üzlet",
  catTech: "IT & tech",
  catFilmeSeriale: "Filmek & sorozatok",
  catCarti: "Könyvek",
  catVoluntariat: "Önkénteskedés",
  catParinti: "Szülők",
  catAnimale: "Állatok",
  catFoto: "Fotózás",
  catPartenerViata: "Élettárs",

  // country-wide location (the counties themselves are proper nouns in geo.ts)
  countyRomania: "Egész Románia",

  // public profile editor (Profil tab, M4)
  pfTitle: "A nyilvános profilod",
  pfHint:
    "A profilt az identitásod írja alá, és bárki elolvashatja, akinek megvan a linkje, akkor is, amikor offline vagy. Az utolsó látogatástól számítva {hours} órán át marad látható — az alkalmazás minden megnyitáskor automatikusan újra közzéteszi.",
  pfName: "Megjelenített név",
  pfBio: "Bemutatkozás",
  pfBioPh: "néhány sor magadról és arról, milyen programokat keresel…",
  pfCounty: "Megye",
  pfCountyNone: "válassz megyét…",
  pfCats: "Tevékenységi kategóriák",
  pfCatsMax: "Legfeljebb 8 kategóriát választhatsz.",
  pfPolicy: "Hozzászólások a profilon",
  pfPolicyOpen: "engedélyezve",
  pfPolicyOff: "kikapcsolva",
  pfAvatar: "Profilkép",
  pfAvatarPick: "Kép kiválasztása",
  pfAvatarRemove: "Törlés",
  pfAvatarBad: "A képet nem lehetett felhasználni — a formátuma nem támogatott, vagy túl nagy.",
  pfPublish: "Profil közzététele",
  pfPublishing: "közzététel…",
  pfPublished: "Profil közzétéve",
  pfPublishInvalid: "Töltsd ki a neved és a megyét a közzététel előtt.",
  pfPublishFailed: "A profil helyben elmentődött, de nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  pfLastPublished: "közzétéve: {time}",
  pfNeverPublished: "még nincs közzétéve",
  pfRepublished: "megnyitáskor automatikusan újra közzétéve",
  pfPreview: "Megtekintés látogatóként",

  // public profile view (#/u/…, M4)
  upLoading: "a profil keresése…",
  upInvalid: "Érvénytelen profillink.",
  upUnavailable:
    "A profil nem érhető el — még nincs közzétéve, vagy az adatok lejártak: a nyilvános időablak {hours} óra, és csak addig újul meg, amíg a profilnak látogatói vannak, vagy a tulajdonosa megnyitja az alkalmazást.",
  upSpam: "A profil nem érhető el — a szoba gyanúsan nagy mennyiségű adatot tartalmaz (lehetséges spam).",
  upNet: "A szolgáltatás nem érhető el — ellenőrizd az internetkapcsolatot, és próbáld újra.",
  upRetry: "Próbáld újra",
  upStale: "gyorsítótárból megjelenítve — lehet, hogy elavult",
  upOwn: "Ez a nyilvános profilod, ahogy mások látják.",
  upEdit: "Profil szerkesztése",
  upMessage: "Üzenet küldése",
  upCreq: "Kapcsolatkérés",
  upCreqSent: "kérés elküldve",
  upCreqTitle: "Kapcsolatkérés",
  upCreqExplain:
    "A kérésed (név + üzenet) aláírva kerül a személy nyilvános postaládájába. Ha elfogadja, ellenőrzött kapcsolatok lesztek — az ujjlenyomat mindkét oldali megerősítésével.",
  upCreqMsg: "Üzenet (nem kötelező)",
  upCreqMsgPh: "miért szeretnéd felvenni a kapcsolatot…",
  upCreqSend: "Kérés elküldése",
  upCreqOk: "Kérés elküldve",
  upCreqFailed: "A kérést nem sikerült elküldeni — ellenőrizd az internetkapcsolatot.",
  upNoIdentity: "Hozz létre egy identitást az alkalmazásban, hogy hozzászólhass vagy kapcsolatot kérhess.",
  upComments: "Hozzászólások",
  upNoComments: "Még nincs hozzászólás.",
  upCommentsOff: "A profil tulajdonosa kikapcsolta a hozzászólásokat.",
  upCommentPh: "írj hozzászólást…",
  upCommentSend: "Hozzászólok",
  upCommentPosted: "Hozzászólás közzétéve",
  upCommentFailed: "A hozzászólást nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  upCommentsTruncated: "csonkolt előzmények — a régebbi hozzászólásokat már nem lehetett beolvasni",
  upHide: "Elrejtés",
  upBlock: "Szerző letiltása",
  upModDone: "Moderálás közzétéve — az elrejtett tartalmat te többé nem újítod meg",
  upModFailed: "A moderálást nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  upModNote:
    "Az elrejtés nem tudja visszavonni a mások által már letöltött másolatokat — a profilod csupán nem újítja meg őket többé.",

  // contact requests (creq/cack, M4)
  crTitle: "Kapcsolatkérések",
  crHint: "A nyilvános profilodon keresztül kapott kérések. Elfogadás előtt ellenőrizd az ujjlenyomatot az illetővel.",
  crAcceptTitle: "{name} a kapcsolatod szeretne lenni",
  crAckTitle: "{name} elfogadta a kapcsolatkérésedet",
  crAckFailed: "A megerősítést nem sikerült elküldeni — próbáld újra.",
  crMore: "…és továbbiak — csak a legújabb kérések jelennek meg.",

  // feed (M5)
  feedLoading: "bejegyzések betöltése…",
  feedEmpty: "Még nincs bejegyzés ezen a környéken — tedd közzé te az elsőt!",
  feedRefresh: "Frissítés",
  feedWindowNote:
    "a nyilvános időablak {hours} óra — a bejegyzések csak addig élnek, amíg valaki a látogatásaival megújítja őket",
  feedWindowEdge: "a nyilvános időablak eleje — régebbi bejegyzések nem léteznek",
  feedTruncated:
    "csonkolt előzmények — gyanúsan nagy mennyiségű adat (lehetséges spam); a régebbi bejegyzések nem lettek beolvasva",
  feedGap: "hiányos előzmények — némelyik bejegyzés lejárt, mielőtt be lehetett volna olvasni",
  feedCapped: "…és továbbiak — ugyanattól a szerzőtől naponta legfeljebb {n} bejegyzés jelenik meg",
  feedLike: "Kedvelem",
  feedLiked: "kedvelted",
  feedLikedNote: "kedvelted — a kedvelések alá vannak írva és véglegesek (nem vonhatók vissza)",
  feedLikeFailed: "A kedvelést nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  feedImgUnavailable: "a fénykép már nem érhető el — lejárt a nyilvános időablakból",
  feedShare: "Bejegyzés linkjének másolása",
  feedHideForeign: "Elrejtés (helyben)",
  feedDeleteLocal: "Törlés helyben",
  feedDeleteNote:
    "Helyben törölve — a mások által letöltött másolatok az időablak lejártáig ({hours} óra) megmaradhatnak; egy szerverek nélküli hálózat nem tud visszavonni egy közzétett bejegyzést.",
  feedCompose: "Új bejegyzés",
  feedComposeTextPh: "milyen programot keresel vagy javasolsz…",
  feedComposeImgs: "Fényképek (legfeljebb 4)",
  feedComposeAddImg: "Fényképek hozzáadása",
  feedComposeShard: "Közzététel itt",
  feedComposeSecond: "Közzététel egy második kategóriában is (nem kötelező)",
  feedComposeNone: "— csak a jelenlegi kategória —",
  feedPublish: "Közzététel",
  feedPublishing: "közzététel… {done}/{total}",
  feedPublished: "Bejegyzés közzétéve",
  feedPublishInvalid: "Írj valamit, vagy adj hozzá egy fényképet.",
  feedPublishFailed: "A bejegyzést nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",

  // post permalink (#/p/…, M5)
  pvLoading: "a bejegyzés keresése…",
  pvNotFound:
    "A bejegyzés nem található — lehet, hogy lejárt (a nyilvános időablak {hours} óra), vagy hibás a link.",

  // profile posts grid (M5)
  upPosts: "Bejegyzések",
  upNoPosts: "Nem található bejegyzés.",
  upGridNote:
    "csak a profil megadott kategóriáiban megtalált bejegyzések jelennek meg, a {hours} órás nyilvános időablakon belül",
  upGridPartial: "némelyik szobát nem lehetett beolvasni — a rács hiányos lehet",

  // audience restriction (M5b) — profile editor
  pfRestrictedTitle: "Korlátozott szakaszok",
  pfRestrictedHint:
    "Minden szakasz közzététel előtt egy kapcsolatcsoport kulcsával titkosítódik — csak a csoport tagjai olvashatják. A korlátozott szakasz megléte nyilvánosan látható; a tartalma nem.",
  pfRestrictedHonesty:
    "Őszintén: aki a csoportban volt, megtartja, amit már megkapott. Valakinek az eltávolítása a jövőbeli tartalomhoz megváltoztatja a kulcsot, és újrapecsételi a jelenlegi profilt, de semmit sem tud visszavonni, amit már láttak. A jelenlegi tagok birtokolják a csoport aktuális kulcsát.",
  pfRestrictedAdd: "Korlátozott szakasz hozzáadása",
  pfRestrictedNoGroups: "Előbb hozz létre egy kapcsolatcsoportot (Kapcsolatok fül), hogy szakaszokat korlátozhass.",
  pfRestrictedGroup: "Látható ennek a csoportnak",
  pfRestrictedAbout: "Rólam (csak a csoportnak)",
  pfRestrictedAboutPh: "csak a csoportnak látható részletek…",
  pfRestrictedContact: "Elérhetőségek (csak a csoportnak)",
  pfRestrictedContactPh: "telefon, e-mail…",
  pfRestrictedCustomAdd: "Mező hozzáadása",
  pfRestrictedCustomLabelPh: "címke…",
  pfRestrictedCustomValPh: "érték…",
  pfRestrictedRemove: "Szakasz törlése",

  // audience restriction (M5b) — public profile + feed
  upSealedTitle: "Korlátozott tartalom",
  upSealedLocked: "korlátozott tartalom — csak a szerző által kiválasztott csoportnak látható",
  upSealedNote:
    "A korlátozott tartalom csoportkulcsokkal van titkosítva. Aki a csoportban volt, megtartja, amit megkapott — az eltávolítás a jövőbeli tartalomhoz zárja el a hozzáférést, a már látottat nem vonja vissza.",
  audVisibleToYou: "korlátozott — számodra látható",
  feedAudLabel: "Ki látja a bejegyzést",
  feedAudPublic: "Nyilvános",
  feedAudNote:
    "A bejegyzés a csoport kulcsával titkosítódik: a szövegét csak a tagok látják. A bejegyzés megléte, a kedvelések és a hozzászólások nyilvánosak maradnak, a korlátozott bejegyzéseknél pedig fényképek nem érhetők el.",
  feedLockedPost: "korlátozott bejegyzés — csak a szerző által kiválasztott csoportnak látható",
  audPublicMetaNote: "korlátozott bejegyzés: a kedvelései és a hozzászólásai nyilvánosak maradnak",

  // activities (P1)
  feedSegPosts: "Bejegyzések",
  feedSegActs: "Programok",
  feedSegMatch: "Egyezések",

  // matching (P2) — pool cards + anonymous likes
  mtLoading: "kártyák keresése…",
  mtNet: "A kört nem sikerült beolvasni — ellenőrizd az internetkapcsolatot.",
  mtMyCardTitle: "A keresőkártyám",
  mtMyCardNone: "Nem vagy látható ebben a körben. Aktiválj egy kártyát, hogy megjelenj a többiek paklijában.",
  mtMyCardActive: "A kártyád aktív ebben a körben — bárki láthatja, aki böngészi.",
  mtMyCardRetired: "A kártyádat visszavontad ebből a körből.",
  mtBlurbLabel: "Rövid bemutatkozás",
  mtBlurbPh: "mit keresel, mikor, milyen szinten…",
  mtActivate: "Kártya aktiválása",
  mtEdit: "Szerkesztés",
  mtRetire: "Kártya visszavonása",
  mtCardSaved: "Kártya közzétéve",
  mtCardRetiredToast: "Kártya visszavonva",
  mtCardFailed: "A kártyát nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  mtNeedName: "Előbb add meg a neved (a Profilban) — az jelenik meg a kártyán.",
  mtCardPublicNote:
    "A kártya nyilvános a kiválasztott körben (kategória + megye), és az alkalmazás utolsó megnyitásától számítva {hours} órán át él.",
  mtLikedMeOne: "1 személy kedvelt téged",
  mtLikedMeMany: "{n} személy kedvelt téged",
  mtLikedMeNote:
    "A kedvelések névtelenek, amíg kölcsönössé nem válnak — nem látható, kitől érkeztek. A szám zsetonokat számol, nem személyeket: bárki gyárthat ilyen letéteket, tehát mesterségesen felfújható.",
  mtSentPendingOne: "1 elküldött kedvelés, egyelőre válasz nélkül",
  mtSentPending: "{n} elküldött kedvelés, egyelőre válasz nélkül",
  mtInboxPartial: "a postaláda átvizsgálása nem teljes — lehetnek még nem számolt kedvelések (lehetséges spam)",
  mtStackEmpty: "Egyelőre nincs mutatható kártya ebben a körben — nézz vissza később.",
  mtStackPartial: "részleges nézet — a kör túl sok letétet tartalmaz (lehetséges spam)",
  mtLike: "Tetszik",
  mtSkip: "Kihagyom",
  mtNoUndoNote: "Az elküldött kedvelés nem vonható vissza; a kihagyások csak helyiek, „visszalépés” nélkül.",
  mtLikeFailed: "A kedvelést nem sikerült elküldeni — ellenőrizd az internetkapcsolatot.",
  mtLikeSent: "Kedvelés elküldve — a kölcsönösségig névtelen marad.",
  mtMutualToast: "Egyezés! Mostantól beszélgethettek.",
  mtMatchesTitle: "Az egyezéseid",
  mtNoMatches: "Még nincs egyezés.",
  mtOpenChat: "Beszélgetés megnyitása",
  mtMatchBadge: "egyezés",
  mtHonestNote:
    "A kedvelés letétbe helyezésének időpontja látható marad a csomópont üzemeltetője számára, és aki fel tudja sorolni a kártyádat, a saját kulcsával nyers erővel tesztelheti az egyezést. Egy egyezés beszélgetésének kulcsa a két fél egyike által létrehozott anyagból származik — a bizalmassága a másikba vetett bizalmat jelenti, mint minden magánbeszélgetésben —, az üzemeltető pedig kikövetkeztetheti, hogy egyezés történt, amikor mindkét fél egyszerre csatlakozik egy új szobához.",

  // match chat (P3)
  mcAddContact: "Hozzáadás a kapcsolatokhoz",
  mcAddIntro:
    "A névjegyedet a titkosított beszélgetésen keresztül küldöd el neki. A kapcsolat csak azután jön létre, hogy mindketten összehasonlítottátok az emoji-ujjlenyomatokat.",
  mcCardSent: "Névjegy elküldve.",
  mcCardSendFailed: "A névjegyet nem sikerült elküldeni.",
  mcCardOffer: "{name} elküldte neked a névjegyét.",
  mcCardReview: "Ellenőrzés és hozzáadás",
  mcAlreadyContact: "Már kapcsolatok vagytok.",
  actEmpty: "Nincs közelgő program ezen a környéken — javasolj egyet!",
  actLoadMore: "További programok",
  actCompose: "Új program",
  actEditTitle: "Program szerkesztése",
  actTitleLabel: "Cím",
  actTitlePh: "milyen programot javasolsz…",
  actDescLabel: "Leírás",
  actDescPh: "részletek: szint, költség, mit kell hozni…",
  actStartLabel: "Kezdés",
  actEndLabel: "Befejezés",
  actLocLabel: "Helyszín (nem kötelező)",
  actLocPh: "hol találkoztok…",
  actVisLabel: "Ki látja a programot",
  actVisPublic: "Nyilvános",
  actVisContacts: "Csak a kapcsolataim",
  actContactsNote:
    "A „Csak a kapcsolataim” egy automatikusan karbantartott csoport: a később hozzáadott kapcsolat a kapcsolatoknak már közzétett programokat is látja, a törölt pedig megtartja, amit látott — a kulcs csak a jövőbeli tartalomhoz változik.",
  actAudNote:
    "A cím nyilvános marad; a leírás és a helyszín a csoport kulcsával titkosítódik. A részvételek (ki jön) nyilvánosak maradnak.",
  actPublish: "Program közzététele",
  actSave: "Módosítások mentése",
  actPublishInvalid: "Töltsd ki a címet és egy érvényes időszakot (a kezdés a befejezés előtt, a jövőben).",
  actPublishFailed: "A programot nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  actPublished: "Program közzétéve",
  actSaved: "Program frissítve",
  actJoin: "Megyek",
  actLeave: "Mégsem megyek",
  actJoinFailed: "A részvételedet nem sikerült közzétenni — ellenőrizd az internetkapcsolatot.",
  actGoingCount: "{n} résztvevő",
  actGoingNone: "még nincs résztvevő",
  actCancelledBadge: "lemondva",
  actLockedNote: "korlátozott program — a részletek csak a szervező által kiválasztott csoportnak láthatók",
  actJoinPublicNote: "korlátozott program: a részvételek (ki jön) nyilvánosak maradnak",
  actOrganizer: "szervező",
  actEdit: "Szerkesztés",
  actCancelAct: "Program lemondása",
  actCancelConfirm: "A(z) „{title}” program mindenki számára lemondottként lesz megjelölve. A részvételek láthatók maradnak.",
  actCancelYes: "Igen, lemondom",
  actCancelledToast: "Program lemondva",
  actDetailGoing: "Résztvevők",
  actGoingMore: "…és még {n}",
  actShare: "Program linkjének másolása",
  actWhen: "Mikor",
  actWhere: "Hol",

  // activity permalink (#/a/…, P1)
  avLoading: "a program keresése…",
  avNotFound:
    "A program nem található — lehet, hogy lejárt (a nyilvános időablak {hours} óra), vagy hibás a link.",

  // profile upcoming-activities strip (P1)
  upActs: "Közelgő programok",
  upNoActs: "Nem található közelgő program.",

  // about + honest limits (#/despre, M6)
  aboutLink: "Az alkalmazásról és a korlátairól",
  aboutTitle: "A Caut Partenerről",
  aboutWhatTitle: "Mi ez",
  aboutIntro:
    "A Caut Partener egy peer-to-peer közösségi hálózat alkalmazásszerverek nélkül: a profilok, a bejegyzések és az üzenetek közvetlenül a tagok eszközei között utaznak, vagy egy ideiglenes továbbító postaládán át, amely a magánbeszélgetéseket nem tudja elolvasni. Nincsenek fiókok és nincs központi adatbázis — semmi sem tárolódik tartósan senki szerverein, a forráskód pedig nyilvános.",
  aboutLimitsTitle: "Őszinte korlátok",
  aboutLimitsIntro:
    "Egy szerverek nélküli hálózat olyan kompromisszumokat köt, amelyeket a klasszikus alkalmazások elrejtenek. Íme a mieink, nyíltan:",
  aboutLimWindow:
    "A nyilvános időablak {hours} óra: a nyilvános profilok és bejegyzések csak addig élnek, amíg valaki a látogatásaival megújítja őket — nincs állandó archívum.",
  aboutLimFeeds:
    "A hírfolyamok „best-effort” alapon működnek: se nem globálisak, se nem konzisztensek — azt látod, amit a friss látogatók megújítottak, nem „mindent, ami létezik”.",
  aboutLimRetract:
    "A törlés nem visszavonás: a mások által már letöltött bejegyzés vagy üzenet nem hívható vissza; a törlés csak a te oldaladon állítja le a megújítást.",
  aboutLimSpam:
    "A nyilvános szobák nyitottak, ezért a spam elleni védelem csak a te alkalmazásodban létezik: megjelenítési korlátok, helyi tiltólisták és a saját profilod moderálása.",
  aboutLimOperator:
    "A továbbító csomópont üzemeltetője elolvashatja a nyilvános tartalmat (aláírt, de nem titkosított), és a nyilvános szobákat identitásokhoz társíthatja. A magánszobák átláthatatlanok maradnak: a csomópont csak méreteket és időpontokat lát.",
  aboutLimSybil:
    "Az identitások ingyenesek és korlátlanok (a „Sybil”-támadás lehetséges) — a bizalom az emoji-ujjlenyomatok összehasonlításából, „az első kulcs marad” szabályból (TOFU) és az ellenőrzött kapcsolatokból ered, nem egy hatóságtól.",
  aboutLimForward:
    "Nincs „forward secrecy” az 1:1 beszélgetésekben és egy csoportkorszakon belül: egy kompromittált kulcs felfedi az adott szoba vagy korszak előzményeit.",
  aboutLimRestricted:
    "A korlátozott bejegyzéseknél a bejegyzés megléte, a kedvelések és a hozzászólások nyilvánosak maradnak — csak a tartalom van titkosítva a kiválasztott csoportnak.",
  aboutLimMatching:
    "Az egyezéseknél a keresőkártyád nyilvános a kiválasztott körben. Az elküldött kedvelés titkosított és a kölcsönösségig névtelen, de nem vonható vissza, a letétbe helyezés időpontja látható marad az üzemeltetőnek, és aki fel tudja sorolni a kártyádat, a saját kulcsával nyers erővel tesztelheti, hogy kedvelted-e.",
  aboutLimActivities:
    "A korlátozott programoknál a cím, az időszak és a részvételek (ki jön) nyilvánosak maradnak — csak a leírás és a helyszín van titkosítva. A „Csak a kapcsolataim” egy automatikusan karbantartott csoport: a később hozzáadott kapcsolat a már közzétett programokat is látja, a törölt pedig megtartja, amit látott.",
  aboutLimCalls:
    "A hang- és videóhívások csak 1-az-1-ben működnek, és csak akkor, amikor mindketten egyszerre online vagytok — nincsenek csoporthívások és nincs hangposta. A hang és a kép titkosítva, közvetlenül az eszközök között utazik (vagy egy TURN-továbbítón át, amely nem tudja elolvasni, de látja az IP-címeket és az adatmennyiséget). A nem fogadott hívás csak egy jelzést hagy a beszélgetésben.",
  aboutUpdatesTitle: "Verzió és frissítések",
  aboutUpdateHint:
    "Az alkalmazás időnként és az alkalmazásba való visszatéréskor automatikusan keres új verziókat; amikor az egyik elkészült, megjelenik a frissítési sáv.",
  aboutCheckUpdates: "Frissítések keresése",
  aboutCheckStarted: "Ellenőrzés folyamatban — ha van új verzió, megjelenik a frissítési sáv.",
  aboutSourceTitle: "Forráskód",
  aboutSourceBody: "Az alkalmazás nyílt forráskódú (MIT licenc). A teljes kód elolvasható és klónozható innen:",

  // calls (P4)
  callAudio: "Hanghívás",
  callVideo: "Videóhívás",
  callNeedOnline:
    "A hívások csak akkor működnek, amikor mindketten egyszerre online vagytok — a kapcsolatod most nincs online.",
  callIncoming: "{name} hív téged",
  callIncomingVideo: "{name} videóhívással hív téged",
  callAcceptAudio: "Fogadás",
  callAcceptVideo: "Fogadás videóval",
  callDecline: "Elutasítás",
  callRinging: "Kicseng…",
  callConnecting: "Kapcsolódás…",
  callDeclinedToast: "Hívás elutasítva.",
  callBusyToast: "Foglalt — épp egy másik hívásban van.",
  callMissedToast: "Nincs válasz.",
  callEndedToast: "Hívás befejezve.",
  callFailedToast: "A hívást nem sikerült létrehozni — ellenőrizzétek mindketten az internetkapcsolatot.",
  callPermDenied: "A mikrofon/kamera hozzáférése megtagadva — a híváshoz szükség van erre az engedélyre.",
  callNoDevice: "Nem található mikrofon vagy kamera ezen az eszközön.",
  callDeviceBusy: "A mikrofont vagy a kamerát egy másik alkalmazás használja.",
  callRecoverFailed: "A mikrofont/kamerát nem sikerült újraindítani — a másik fél már nem hall téged. Tedd le, és hívd újra.",
  callHangup: "Hívás befejezése",
  callMicToggle: "Mikrofon",
  callCamToggle: "Kamera",
  callFlip: "Kameraváltás",
  callMissedLine: "Nem fogadott hívás",
  callEndedLine: "Hívás befejezve",
  callEndedLineDur: "Hívás befejezve · {dur}",
  callP2PNote: "A hívás közvetlenül köztetek utazik (titkosítva); egy TURN-továbbító csak az IP-címeket és az adatmennyiséget láthatja.",

  // TOFU key-change warning
  tofuTitle: "Figyelem: a kapcsolatod kulcsa megváltozott",
  tofuBody:
    "{name} titkosítási kulcsa eltér attól, amit elmentve őrzöl. Ez akkor történik, ha újra létrehozta az identitását — de azt is jelentheti, hogy valaki más próbálja kiadni magát neki. Elfogadás előtt ellenőrizd közvetlenül a kapcsolatoddal, egy másik csatornán.",
  tofuAccept: "Elfogadom az új kulcsot",
  tofuReject: "Elutasítom",
  tofuRejected: "Az új kulcs elutasítva — a kapcsolat változatlan marad.",
} satisfies Record<keyof typeof ro, string>;

static mirror of HEAD · about · clone: git clone https://cod-sursa.cautpartener.ro/cautpartener.git