SkateSpots/src/i18n/pl/batch3.ts

1294 lines
84 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.

/** pl — batch 3. */
const plBatch3 = {
settingsUi: {
proSupport: {
title: "Pro i wsparcie",
subtitle: "Opcjonalne dodatki, dzięki którym SkateSpots jest darmowy",
prepaidTitle: "Przedpłata, nie subskrypcja",
prepaidBody: "Każdy zakup to jednorazowa płatność w Bitcoinie/Lightningu — bez konta, bez cyklicznych opłat, bez powiernictwa. Kolejna płatność wydłuża Twój czas.",
sasquatchTitle: "Sasquatch Pro",
sasquatchBenefit: "Odblokowuje osobistego asystenta AI — może czytać Twój Stash, ekipy i ogłoszenia — i pomaga finansować projekt.",
active: "Aktywny",
activeUntil: "Aktywne do {{date}}",
daysLeft: "Pozostało {{count}} dni",
notActive: "Nieaktywne",
goPro: "Przejdź na Pro",
extend: "Przedłuż Pro",
day: "dzień",
featuredTitle: "Wyróżnione miejsce",
featuredBenefit: "Wypchnij ogłoszenie na górę z odznaką Pro — dla profili The Lab, wydarzeń, sklepów i wycieczek.",
featuredHow: "Progi czasowe dotyczą każdego typu; dłuższe zobowiązania kosztują mniej za dzień. Ogłoszenie wyróżniasz podczas jego tworzenia lub edycji.",
featuredUntil: "Do {{date}}",
yourFeatured: "Twoje wyróżnione ogłoszenia",
noneFeatured: "Brak aktywnych wyróżnień.",
freeTitle: "Darmowe ścieżki",
freeBody: "FAQ AI i lokalne wyszukiwanie są zawsze darmowe, a ogłoszenie na marketplace możesz opublikować za darmowy proof-of-work zamiast opłaty w sats."
},
notFound: {
seoTitle: "404 — nie znaleziono strony",
seoDescription: "Strona, której szukasz, nie została znaleziona. Wróć na stronę główną, aby kontynuować przeglądanie.",
message: "Ups! Nie znaleziono strony",
returnHome: "Wróć do strony głównej"
},
loginArea: {
signUp: "Zarejestruj się",
logIn: "Zaloguj się"
},
accountSwitcher: {
switchAccount: "Przełącz konto",
walletSettings: "Ustawienia portfela",
addAccount: "Dodaj kolejne konto",
logout: "Wyloguj się"
},
amberHint: {
defaultAction: "wysłać",
multiBefore: "Twój signer poprosi Cię o zatwierdzenie",
multiTimes: "{{approvals}} razy",
multiAfter: ", aby {{action}} — to normalne dla zaszyfrowanych wiadomości (jedno zatwierdzenie na odbiorcę). Zatwierdź każde.",
single: "Twój signer poprosi Cię o zatwierdzenie, aby {{action}}."
},
amberCallback: {
processing: "Przetwarzanie logowania przez Amber...",
gotResult: "Otrzymano wynik: {{result}}",
noResultDebug: "Brak wyniku z Amber",
noResultToast: "Nie otrzymano wyniku z Amber. Operacja mogła zostać anulowana.",
validPubkey: "Prawidłowy pubkey! Logowanie...",
loginSuccessful: "Logowanie udane!",
loginErrorDebug: "Błąd logowania: {{error}}",
invalidResultDebug: "Nieprawidłowy format wyniku: {{result}}",
loggedInTitle: "Zalogowano",
amberLoginDesc: "Pomyślnie zalogowano przez Amber!",
loginFailedTitle: "Logowanie nie powiodło się",
loginFailedDesc: "Nie udało się dokończyć logowania przez Amber. Spróbuj ponownie.",
invalidPubkeyDesc: "Otrzymano nieprawidłowy pubkey z Amber.",
sessionLostToast: "Dane sesji zostały utracone. Spróbuj ponownie.",
eventSignedTitle: "Wydarzenie podpisane",
eventSignedDesc: "Twoje wydarzenie zostało podpisane przez Amber.",
signingFailedTitle: "Podpisywanie nie powiodło się",
signingFailedDesc: "Nie udało się przetworzyć podpisanego wydarzenia z Amber.",
operationCompleteTitle: "Operacja zakończona",
operationCompleteDesc: "{{op}} zakończono."
},
loginDialog: {
loginWithAmber: "Zaloguj się przez Amber (Android)",
welcomeTitle: "Witaj w SkateSpots",
welcomeSubtitle: "Zarejestruj się lub zaloguj, aby kontynuować",
newHere: "Jesteś tu nowy?",
createFree: "Załóż darmowe konto. E-mail nie jest wymagany.",
createAccount: "Załóż konto",
orLogIn: "Albo zaloguj się",
loggedInTitle: "🛹 Zalogowano!",
loggedIn: "Zalogowano!",
connectedAmber: "Połączono przez Amber!",
amberLoginFailed: "Logowanie przez Amber nie powiodło się",
amberCancelled: "Logowanie anulowane. Dotknij „Open Amber”, aby spróbować ponownie.",
amberNotFound: "Nie znaleziono Amber. Upewnij się, że Amber jest zainstalowany ze ZapStore.",
loginFailed: "Logowanie nie powiodło się",
pubkeyError: "Wklej swój pubkey hex (64 znaki) lub npub z Amber",
pairedSigner: "Sparowano z Twoim signerem.",
connectFailed: "Nie udało się połączyć z Twoim signerem.",
openedEncrypted: "Otwarto Twój zaszyfrowany klucz.",
openKeyFailed: "Nie udało się otworzyć tego klucza.",
bunkerPrefix: "Musi zaczynać się od bunker://",
connectedBunker: "Połączono przez bunker!",
bunkerFailed: "Nie powiodło się: {{error}}",
checkBunkerUri: "Sprawdź swój URI bunkera",
nsecPrefix: "Musi zaczynać się od nsec1",
invalidNsec: "Nieprawidłowy nsec: {{error}}",
checkKey: "Sprawdź swój klucz",
noExtensionTitle: "Nie znaleziono rozszerzenia",
noExtensionDesc: "Zainstaluj Alby lub inne rozszerzenie NIP-07.",
amberIdleDesc: "Twój klucz pozostaje wewnątrz Amber. Jedno dotknięcie — zatwierdź w Amber i wracasz tutaj, zalogowany. Nic do kopiowania.",
continueWithAmber: "Kontynuuj z Amber",
noAmberGetIt: "Nie masz Amber? Pobierz go →",
waitingAmberTitle: "Czekam na Amber…",
waitingAmberDesc: "Zatwierdź prośbę w Amber. Zostaniesz zalogowany automatycznie, gdy tylko wrócisz.",
openAmberAgain: "Otwórz Amber ponownie",
havingTrouble: "Masz problem? Wpisz klucz ręcznie",
enterPublicKey: "Wpisz swój klucz publiczny",
enterPublicKeyDescBefore: "Tylko jeśli automatyczny proces nie zadziałał. W Amber: dotknij swojego profilu →",
copyPublicKey: "Skopiuj klucz publiczny",
enterPublicKeyDescAfter: "następnie wklej go tutaj.",
connect: "Połącz",
back: "← Wstecz",
signInWithPhone: "Zaloguj się telefonem",
signInWithPhoneDesc: "Zeskanuj aplikacją signera (Amber, nsec.app). Twój klucz nigdy nie opuszcza telefonu.",
showPairingCode: "Pokaż kod parowania",
waitingSigner: "Czekam na Twój signer…",
copyLink: "Skopiuj link",
orPasteBunker: "albo wklej adres URL bunkera",
bunkerTitle: "Bunker (NIP-46)",
bunkerPasteBefore: "Wklej swój",
bunkerPasteAfter: "URI.",
amberInstructions: "Ustawienia → Bunker NIP-46 → Utwórz → Skopiuj",
nsecAppInstructions: "Połącz aplikację → Skopiuj URI bunkera",
secretKeyTitle: "Klucz tajny",
secretKeyRawDesc: "Wklej bezpośrednio swój klucz tajny Nostr.",
secretKeyEncDesc: "Otwórz kopię zapasową klucza chronioną hasłem.",
rawNsec: "Surowy nsec",
encryptedNip49: "Zaszyfrowany (NIP-49)",
nsecWarning: "⚠️ Używaj tego tylko na zaufanym urządzeniu. Nigdy nie udostępniaj swojego nsec.",
login: "Zaloguj się",
encSaferDesc: "Bezpieczniej: klucz pozostaje zaszyfrowany, dopóki nie wpiszesz hasła, więc kopię zapasową można bezpiecznie trzymać w chmurze lub menedżerze haseł.",
password: "Hasło",
openEncryptedKey: "Otwórz zaszyfrowany klucz",
browserExtensionTitle: "Rozszerzenie przeglądarki (NIP-07)",
browserExtensionDesc: "Najlepsze na komputer. Działa z Alby, nos2x, Flamingo.",
loginWithExtension: "Zaloguj się przez rozszerzenie"
},
signupDialog: {
download: "Pobierz",
stepChoose: "Wybierz",
stepProfile: "Profil",
stepSaveKey: "Zapisz klucz",
somethingWrong: "Coś poszło nie tak",
createFailed: "Nie udało się utworzyć Twojego konta. Spróbuj ponownie.",
keySavedTitle: "Klucz tajny zapisany!",
keySavedDesc: "Twój klucz został bezpiecznie zapisany.",
downloadFailedTitle: "Pobieranie nie powiodło się",
downloadFailedDesc: "Nie udało się pobrać pliku z kluczem. Skopiuj go ręcznie.",
encSavedTitle: "Zaszyfrowana kopia zapasowa zapisana 🔐",
encSavedDesc: "Zachowaj plik ORAZ hasło — potrzebujesz obu, aby się ponownie zalogować.",
encFailed: "Nie udało się zaszyfrować tego klucza.",
invalidFileTitle: "Nieprawidłowy typ pliku",
invalidFileDesc: "Wybierz plik obrazu na swój avatar.",
fileTooLargeTitle: "Plik jest za duży",
fileTooLargeDesc: "Obraz avatara musi być mniejszy niż 5 MB.",
avatarUploadedTitle: "Avatar przesłany!",
avatarUploadedDesc: "Twój avatar został pomyślnie przesłany.",
uploadFailedTitle: "Przesyłanie nie powiodło się",
uploadFailedDesc: "Nie udało się przesłać avatara. Spróbuj ponownie.",
nameRequiredTitle: "Wymagana nazwa wyświetlana",
nameRequiredDesc: "Wybierz nazwę wyświetlaną, aby inni skaterzy wiedzieli, kim jesteś. Możesz ją zmienić w dowolnym momencie.",
reserveFailedTitle: "Nie udało się zarezerwować tej nazwy",
reserveFailedDesc: "{{error}} Możesz ją zarezerwować później w Ustawieniach.",
profileCreatedTitle: "Profil utworzony!",
profileCreatedDesc: "Twój profil został skonfigurowany.",
profileFailedTitle: "Konfiguracja profilu nie powiodła się",
profileFailedDesc: "Twoje konto zostało utworzone, ale konfiguracja profilu nie powiodła się. Możesz go zaktualizować później.",
welcomeToastTitle: "Witaj!",
welcomeToastDesc: "Twoje konto jest gotowe.",
titleWelcome: "Dołącz do SkateSpots",
titleProfile: "Skonfiguruj swój profil",
titleDone: "Witaj!",
createFreeAccount: "Załóż darmowe konto",
createFreeAccountDesc: "Bez e-maila, bez telefonu, bez hasła. Twoje konto to klucz Nostr — wybierz, gdzie ma mieszkać.",
recommended: "Zalecane",
signUpWithAmber: "Zarejestruj się przez Amber",
signUpWithAmberDesc: "Twój klucz jest tworzony i przechowywany w aplikacji Amber — SkateSpots nigdy go nie dotyka. Najbezpieczniej. Jedno dotknięcie, aby zatwierdzić.",
continueWithAmber: "Kontynuuj z Amber",
orQuickWay: "albo szybka droga",
quickAccount: "Szybkie konto na tym urządzeniu",
quickAccountDesc: "Generujemy klucz, który mieszka na tym urządzeniu. Najszybszy start — pomożemy Ci zaraz zapisać kopię zapasową.",
createQuickAccount: "Utwórz szybkie konto",
quickReassurance: "Zajmuje 5 sekund · mieszka na tym urządzeniu · pomożemy Ci je zaraz zapisać",
preferAnotherSigner: "Wolisz inny signer?",
iosDesktopNudge: "Na iOS lub komputerze? Aplikacja signera lub rozszerzenie przeglądarki to najbezpieczniejsza opcja —",
seeAllOptions: "Zobacz wszystkie opcje",
youreInPickName: "Jesteś w środku! 🛹 Wybierz nazwę wyświetlaną, aby skaterzy wiedzieli, kim jesteś",
changeAnytime: "Możesz ją zmienić później w dowolnym momencie. Bio i avatar są opcjonalne.",
publishingProfile: "Publikowanie Twojego profilu...",
displayName: "Nazwa wyświetlana",
displayNamePlaceholder: "np. Tony, gnarlyGrind albo nazwa Twojej ekipy",
displayNameHint: "Wymagane — tak będziesz widoczny w całym SkateSpots. Zmień w dowolnym momencie.",
skateName: "Twoja nazwa w SkateSpots",
skateNameHint: "Darmowa i opcjonalna — zweryfikowany handle, który pokazuje ✓ na Twoim profilu.",
bio: "Bio",
bioPlaceholder: "Opowiedz innym o sobie...",
avatar: "Avatar",
uploadAvatar: "Prześlij obraz avatara",
saving: "Zapisywanie...",
saveAndStart: "Zapisz i zacznij jeździć",
addNameToContinue: "Dodaj nazwę wyświetlaną, aby kontynuować.",
savingPublishesNote: "Zapis publikuje Twój profil w Nostr — Twój signer może poprosić Cię o jednorazowe zatwierdzenie.",
youreIn: "Jesteś w środku! 🛹",
oneQuickThing: "Jeszcze jedna szybka rzecz, zanim wskoczysz…",
saveLoginKey: "Zapisz swój klucz logowania",
saveLoginKeyBefore: "To jest",
only: "jedyna",
saveLoginKeyAfter: "droga powrotna do Twojego konta — bez e-maila, bez resetowania hasła. Zapisz go teraz, a będziesz mógł zalogować się na dowolnym urządzeniu, gdziekolwiek jeździsz.",
revealSaveKey: "Pokaż i zapisz mój klucz",
recoveryCopied: "Kod odzyskiwania skopiowany. Trzymaj go w bezpiecznym miejscu.",
saved: "Zapisano",
treatLikeBoardKeys: "Traktuj go jak klucze do swojej deski — każdy, kto ma ten kod, kontroluje Twoje konto. Nigdy go nie udostępniaj.",
hideEncBackup: "Ukryj zaszyfrowaną kopię zapasową",
saveEncBackup: "Zapisz zaszyfrowaną kopię zapasową",
encBackupBefore: "Kopia chroniona hasłem — bezpieczna w chmurze lub menedżerze haseł. Będziesz potrzebować pliku",
and: "i",
encBackupAfter: "hasła.",
choosePassword: "Wybierz hasło",
saveEncBackupCta: "Zapisz zaszyfrowaną kopię zapasową",
savedCodeAria: "Zapisałem swój kod odzyskiwania",
savedCodeLabel: "Zapisałem swój kod odzyskiwania w bezpiecznym miejscu — w menedżerze haseł lub offline na papierze.",
letsSkate: "Jedziemy",
saveLater: "Zapiszę go później w Ustawieniach",
advancedSigner: "Zaawansowane: użyj aplikacji signera"
},
mnemonic: {
generatedTitle: "Fraza odzyskiwania wygenerowana! 🎉",
generatedDesc: "Zapisz te 12 słów w kolejności. To klucz do Twojego konta!",
savedTitle: "Fraza odzyskiwania zapisana!",
savedDesc: "Trzymaj ten plik w bezpiecznym miejscu.",
downloadFailedTitle: "Pobieranie nie powiodło się",
downloadFailedDesc: "Nie udało się pobrać pliku. Skopiuj go ręcznie.",
copiedTitle: "Skopiowano do schowka!",
copiedDesc: "Twoja fraza odzyskiwania została skopiowana.",
qrWindowTitle: "Kod QR frazy odzyskiwania",
qrHeading: "Twój kod QR frazy odzyskiwania",
qrAlt: "Kod QR frazy odzyskiwania",
qrWarning: "Trzymaj ten kod QR prywatnie i bezpiecznie!",
qrPrint: "Wydrukuj kod QR",
qrFailedTitle: "Kod QR nie powiódł się",
qrFailedDesc: "Nie udało się wygenerować kodu QR.",
accountCreatedTitle: "Konto utworzone! 🎉",
accountCreatedDesc: "Wszystko gotowe! Twoja fraza odzyskiwania jest bezpieczna.",
loginFailedTitle: "Logowanie nie powiodło się",
loginFailedDesc: "Nie udało się utworzyć konta. Spróbuj ponownie.",
verifyFailedTitle: "Weryfikacja nie powiodła się",
verifyFailedDesc: "Słowa się nie zgadzają. Sprawdź i spróbuj ponownie.",
titlePrefix: "Załóż konto za pomocą",
titleSuffix: "frazy odzyskiwania",
twelveWordTitle: "12-słowna fraza odzyskiwania",
twelveWordDesc: "Twoja fraza odzyskiwania jest jak hasło główne. Zapisz ją na papierze i trzymaj bezpiecznie. Będziesz jej potrzebować, aby dostać się do konta z innych urządzeń lub jeśli wyczyścisz dane przeglądarki.",
generate: "Wygeneruj frazę odzyskiwania",
useNsecInstead: "Użyj zamiast tego zaawansowanego klucza nsec",
yourPhrase: "Twoja fraza odzyskiwania",
copy: "Kopiuj",
download: "Pobierz",
qrCode: "Kod QR",
criticalWarning: "Krytyczne ostrzeżenie o bezpieczeństwie",
warnWriteStrong: "Zapisz to",
warnWrite: "na papierze i przechowuj bezpiecznie",
warnNeverShareStrong: "Nigdy nie udostępniaj",
warnNeverShare: "swojej frazy odzyskiwania nikomu",
warnBackupsStrong: "Trzymaj wiele kopii zapasowych",
warnBackups: "w różnych bezpiecznych miejscach",
warnAnyoneStrong: "Każdy, kto ma tę frazę",
warnAnyone: "kontroluje Twoje konto na zawsze",
warnLoseStrong: "Jeśli ją zgubisz",
warnLose: "trwale tracisz swoje konto",
savedSecurely: "Zapisałem ją bezpiecznie",
verifyTitle: "Zweryfikuj swoją frazę odzyskiwania",
verifyDesc: "Aby upewnić się, że zapisałeś ją poprawnie, wpisz te słowa:",
wordLabel: "Słowo nr {{n}}",
wordPlaceholder: "Wpisz słowo nr {{n}}",
goBack: "Wróć",
verifyCreate: "Zweryfikuj i utwórz konto",
completeTitle: "Konto utworzone!",
completeDesc: "Twoje konto Nostr jest gotowe!",
signerTitle: "Zalecane: skonfiguruj aplikację signera",
signerSubtitle: "Trzymaj klucze jeszcze bezpieczniej",
signerDesc: "Dla lepszego bezpieczeństwa użyj dedykowanej aplikacji signera zamiast wklejać swoją frazę odzyskiwania wszędzie. Aplikacje signera chronią klucze, pozwalając korzystać z dowolnej aplikacji Nostr.",
signerCta: "Dowiedz się o aplikacjach signera",
skip: "Na razie pomiń"
},
signupMethod: {
titlePrefix: "Wybierz swoją",
titleSuffix: "metodę rejestracji",
subtitle: "Obie metody są bezpieczne. Wybierz tę, która najbardziej Ci odpowiada!",
recommended: "Zalecane",
mnemonicTitle: "Fraza odzyskiwania",
mnemonicDesc: "12 łatwych do zapamiętania słów. Standard branżowy używany przez Bitcoin, Ethereum i większość portfeli krypto.",
mnemonicF1: "Łatwa do zapisania na papierze",
mnemonicF2: "Działa z innymi aplikacjami Nostr (NIP-06)",
mnemonicF3: "Może generować wiele kont",
mnemonicF4: "Znana użytkownikom krypto",
useMnemonic: "Użyj frazy odzyskiwania",
advanced: "Zaawansowane",
nsecTitle: "Klucz tajny (nsec)",
nsecDesc: "Surowy klucz kryptograficzny. Bardziej techniczny, ale daje bezpośredni dostęp do Twojej tożsamości Nostr.",
nsecF1: "Bezpośrednia kontrola kryptograficzna",
nsecF2: "Zgodny ze wszystkimi aplikacjami Nostr",
nsecF3: "Pojedynczy ciąg do kopii zapasowej",
nsecF4: "Bez warstwy pochodnej",
useNsec: "Użyj klucza tajnego",
footer: "🔒 Obie metody są równie bezpieczne. Wybierz według własnych preferencji!"
},
skateNip05: {
placeholder: "twojanazwa",
claimedSuffix: "jest Twoja — zapisz profil, aby ją opublikować.",
checking: "Sprawdzanie dostępności…",
available: "{{name}}@{{domain}} jest dostępna",
claim: "Zarezerwuj ją",
hint: "Litery, cyfry, myślniki. Darmowa, pokazywana jako odznaka ✓ na Twoim profilu."
},
nip05Required: {
getFree: "Zdobądź darmowy / tani NIP-05",
paid: "Płatne",
requiredTitle: "Wymagana weryfikacja NIP-05",
bannerReason: "Aby zapobiegać spamowi i budować zaufanie, {{role}} potrzebuje zweryfikowanego adresu Nostr (NIP-05).",
gateReason: "Aby zapobiegać spamowi i budować zaufanie, {{role}} musi mieć weryfikację NIP-05.",
addInSettings: "Dodaj NIP-05 w Ustawieniach",
explainer: "NIP-05 potwierdza Twoją tożsamość, łącząc Twój profil Nostr z domeną — na przykład",
updateProfile: "Zaktualizuj swój profil"
},
editProfile: {
uploadSuccessTitle: "Sukces",
uploadSuccessDesc: "{{field}} przesłano pomyślnie",
uploadErrorDesc: "Nie udało się przesłać {{field}}. Spróbuj ponownie.",
mustBeLoggedIn: "Musisz być zalogowany, aby zaktualizować swój profil",
invalidClinkTitle: "Nieprawidłowy kod CLINK",
invalidClinkDesc: "To nie wygląda na prawidłowy kod noffer1… Wyczyść go lub wklej prawidłowy.",
invalidLightningTitle: "Nieprawidłowy adres Lightning",
invalidLightningDesc: "Użyj adresu podobnego do e-maila, np. ty@walletofsatoshi.com.",
invalidSpTitle: "Nieprawidłowy adres Silent Payment",
invalidSpDesc: "Adres Silent Payment zaczyna się od „sp1” i jest dość długi. Wyczyść go lub wklej prawidłowy.",
invalidCordnTitle: "Nieprawidłowy link Cordn",
invalidCordnDesc: "Wklej pełny link kontaktowy Cordn https://…",
updateSuccessTitle: "Sukces",
updateSuccessDesc: "Twój profil został zaktualizowany",
updateErrorDesc: "Nie udało się opublikować profilu. Sprawdź połączenia z relayami w Ustawienia > Relays",
identityTitle: "Tożsamość",
identityDesc: "Jak się prezentujesz w całym SkateSpots.",
displayName: "Nazwa wyświetlana",
displayNamePlaceholder: "Twoja nazwa",
bio: "Bio",
bioPlaceholder: "Kilka słów o Tobie i Twoim jeżdżeniu…",
profilePicture: "Zdjęcie profilowe",
pictureDesc: "Prześlij lub wklej kwadratowy obraz.",
bannerImage: "Obraz banera",
bannerDesc: "Szeroki obraz na górę Twojego profilu.",
website: "Strona internetowa",
bitcoinTitle: "Bitcoin i płatności",
bitcoinDesc: "Pozwól ludziom wysyłać Ci zaps, napiwki i płatności bezpośrednio — bez pośredników.",
lightningAddress: "Adres Lightning",
lud16Invalid: "Użyj adresu podobnego do e-maila, np. ty@twojadomena.com.",
lud16Ok: "Zasila przycisk „Zap” na Twoim profilu.",
lud16Hint: "Natychmiastowe napiwki Bitcoin. Zasila przycisk „Zap” na Twoim profilu.",
silentPaymentAddress: "Adres Silent Payment",
spInvalid: "Powinien zaczynać się od „sp1” i być dość długi.",
spOk: "Prawidłowy — adres on-chain wielokrotnego użytku i prywatny.",
spHint: "Statyczny adres on-chain wielokrotnego użytku (BIP-352). Udostępnij raz; każda płatność jest niepowiązywalna.",
clinkTipCode: "Kod napiwku CLINK",
nofferInvalid: "To nie wygląda na prawidłowy kod noffer1…",
nofferOk: "Prawidłowy — na Twoim profilu pojawi się przycisk „Napiwek w Bitcoinie”.",
nofferHint: "Samodzielny kod CLINK, dzięki któremu każdy może wysłać Ci napiwek przez Nostr — bez pośredników.",
skateProfileTitle: "Profil skatera",
skateProfileDesc: "Twoi sponsorzy i sposób, w jaki ekipa się z Tobą kontaktuje.",
badges: "Odznaki",
badgesHint: "(etykieta + opcjonalny link)",
badgeExample: "np. Independent Trucks",
badgeLabelPlaceholder: "Etykieta odznaki…",
badgeUrlPlaceholder: "https://… (opcjonalnie)",
removeBadge: "Usuń odznakę",
addBadge: "Dodaj odznakę",
badgesDescBefore: "Sponsorzy, sklepy lub osoby wspierające Twoje jeżdżenie — i cokolwiek innego, czym chcesz się pochwalić. Każda staje się klikalnym chipem na Twoim profilu. Twoja",
badgesDescAfter: "odznaka członka jest dodawana automatycznie.",
coordinator: "Koordynator",
cordnInvalid: "To nie wygląda na koordynatora. Wklej nprofile, link cordn.net lub adres URL https://.",
cordnOk: "Pokazywany na Twoim profilu — inni mogą dodać go jednym dotknięciem.",
cordnHint: "Koordynator Cordn, którego inni używają, aby pisać do Ciebie. Prywatny, zaszyfrowany, Twój.",
useMyCoordinator: "Użyj mojego koordynatora",
accountTitle: "Konto",
accountDesc: "Dodatkowe ustawienia konta.",
botAccount: "Konto bota",
botAccountDesc: "Oznacz to konto jako zautomatyzowane lub bota.",
saving: "Zapisywanie…",
saveProfile: "Zapisz profil",
nip05VerifiedHandle: "Zweryfikowany handle NIP-05",
nip05How: "Jak?",
extraHandles: "Dodatkowe handle",
extraHandlesHint: "opcjonalne — dodaj do 5",
nip05HintEmpty: "Zweryfikowany handle, taki jak ty@twojadomena.com — odpowiednik niebieskiego znaczka w Nostr. Pokazuje odznakę ✓ na Twoim profilu i odblokowuje filtr „Zweryfikowani” w katalogu skaterów.",
nip05Invalid: "Użyj handle podobnego do e-maila, np. ty@twojadomena.com — bez „https://” i spacji.",
nip05Checking: "Sprawdzanie Twojej domeny…",
nip05Verified: "Zweryfikowano — Twoja domena potwierdza, że ten handle należy do Ciebie. ✓",
nip05Mismatch: "Twoja domena mapuje ten handle na INNY klucz. Popraw swój .well-known/nostr.json, aby wskazywał na to konto.",
nip05Unreachable: "Nie udało się jeszcze dotrzeć do /.well-known/nostr.json Twojej domeny. Zapisane handle nadal działają, gdy domena będzie poprawnie skonfigurowana.",
nip05Enter: "Wpisz swój handle NIP-05.",
freeHandleBefore: "Nie masz własnej domeny? Zarezerwuj darmowy handle",
freeHandleAfter: "od SkateSpots.",
uploadLabel: "Prześlij {{label}}",
previewLabel: "Podgląd {{label}}"
},
security: {
recoveryCopied: "Kod odzyskiwania skopiowany. Przechowuj go w bezpiecznym miejscu.",
savedTitle: "Zapisano!",
recoveryDownloaded: "Kod odzyskiwania pobrany. Trzymaj go w bezpiecznym miejscu.",
downloadFailedTitle: "Pobieranie nie powiodło się",
downloadFailedDesc: "Skopiuj go ręcznie.",
loginRequired: "Wymagane logowanie",
loginRequiredDesc: "Zaloguj się, aby uzyskać dostęp do ustawień bezpieczeństwa.",
backupConfirmedTitle: "Kopia zapasowa potwierdzona! ✅",
backupConfirmedDesc: "Świetnie! Twoje klucze są bezpieczne.",
yourRecoveryCode: "Twój kod odzyskiwania",
recoveryCodeDesc: "Nie zapisałeś go przy rejestracji? Możesz go stąd odebrać w dowolnym momencie.",
recoveryCodeBefore: "Ten kod to",
only: "jedyna",
recoveryCodeAfter: "droga do ponownego zalogowania się na nowym urządzeniu lub w przeglądarce. Zapisz go w bezpiecznym miejscu (menedżer haseł lub na papierze). Każdy, kto go ma, kontroluje Twoje konto — nigdy go nie udostępniaj.",
revealRecovery: "Pokaż mój kod odzyskiwania",
qrHint: "Zeskanuj inną aplikacją Nostr, aby się zalogować. Trzymaj ten ekran prywatnie.",
neverShareHide: "⚠️ Nigdy tego nie udostępniaj. Ukryj, gdy skończysz.",
hide: "Ukryj",
amberNoteBefore: "Jesteś zalogowany przez",
amberNoteAfter: ". Twój kod odzyskiwania znajduje się w Amber — otwórz aplikację Amber, aby zrobić kopię zapasową. SkateSpots nigdy nie widzi Twojego klucza.",
bunkerNoteBefore: "Jesteś zalogowany przez",
remoteSigner: "zdalny signer (bunker)",
bunkerNoteAfter: ". Twój kod odzyskiwania jest przechowywany przez usługę signera, nie przez SkateSpots. Zrób tam kopię zapasową.",
extensionNoteBefore: "Jesteś zalogowany przez",
browserExtension: "rozszerzenie przeglądarki",
extensionNoteAfter: ". Twój kod odzyskiwania znajduje się w rozszerzeniu — użyj jego własnej opcji kopii zapasowej/eksportu. SkateSpots nigdy nie widzi Twojego klucza.",
otherNote: "Twoim kodem odzyskiwania zarządza aplikacja signera, nie SkateSpots. Zrób tam kopię zapasową.",
backupWarningTitle: "⚠️ Czy zrobiłeś kopię zapasową frazy odzyskiwania lub klucza tajnego?",
backupWarningBody: "Twoje klucze to JEDYNY sposób dostępu do konta. Jeśli je zgubisz, tracisz wszystko — nie ma resetowania hasła!",
iveBackedUp: "Zrobiłem kopię zapasową kluczy",
backupConfirmed: "✅ Kopia zapasowa potwierdzona",
backupNotConfirmed: "⚠️ Kopia zapasowa niepotwierdzona",
backupConfirmedStatusDesc: "Potwierdziłeś, że Twoje klucze są bezpiecznie zapisane.",
backupNotConfirmedDesc: "Pamiętaj, aby zrobić kopię zapasową frazy odzyskiwania lub klucza tajnego!",
notSavedYetBefore: "Nie zapisałeś jeszcze kodu odzyskiwania? Nie ma problemu — odbierz go z sekcji",
notSavedYetAfter: "powyżej, zapisz w bezpiecznym miejscu, a następnie potwierdź poniżej.",
yesBackedUp: "Tak, zrobiłem kopię zapasową kluczy",
bestPracticesTitle: "Najlepsze praktyki bezpieczeństwa kluczy",
bestPracticesDesc: "Jak chronić swoje konto Nostr",
bp1Title: "Zapisz to na papierze",
bp1Desc: "Fizyczna kopia zapasowa jest najbezpieczniejsza. Przechowuj ją w bezpiecznym miejscu, np. w sejfie.",
bp2Title: "Wiele kopii zapasowych",
bp2Desc: "Trzymaj kopie w różnych bezpiecznych miejscach (sejf w domu, skrytka bankowa itp.)",
bp3Title: "Nigdy nie udostępniaj kluczy",
bp3Desc: "Prawdziwe aplikacje Nostr NIGDY nie proszą o Twój nsec ani frazę odzyskiwania po pierwszym zalogowaniu",
bp4Title: "Nie trzymaj w chmurze bez szyfrowania",
bp4Desc: "Unikaj Google Docs, wersji roboczych e-maili czy zwykłego tekstu w chmurze",
bp5Title: "Rozważ użycie rozszerzenia przeglądarki",
bp5Desc: "Alby, nos2x lub Flamingo chronią Twoje klucze i nigdy nie ujawniają ich stronom",
importantReminders: "⚠️ Ważne przypomnienia",
rem1: "Jeśli zgubisz klucze, trwale tracisz konto",
rem2: "Żadna firma ani osoba nie może zresetować Twojego hasła — nawet my",
rem3: "Każdy, kto ma Twoje klucze, ma pełną kontrolę nad Twoim kontem",
rem4: "Twoje klucze kontrolują wszystkie Twoje dane Nostr we WSZYSTKICH aplikacjach",
recommendedSigners: "🔌 Zalecane signery Nostr",
recommendedSignersDesc: "Użyj signera Nostr dla lepszego bezpieczeństwa i wygody",
recommended: "Zalecane",
amberDesc: "Bezpieczny signer Nostr na Androida. Chroni klucze na telefonie i podpisuje wydarzenia, nie ujawniając ich.",
albyDesc: "Pełnoprawne rozszerzenie z portfelem Lightning, WebLN i obsługą NWC.",
flamingoDesc: "Prosty, przejrzysty interfejs. Skupia się na podpisywaniu Nostr bez funkcji portfela.",
nos2xDesc: "Minimalne, lekkie rozszerzenie dla zaawansowanych użytkowników.",
nostrConnectTitle: "☁️ Nostr Connect (zdalne signery)",
nostrConnectDesc: "Użyj zdalnego signera, aby uzyskać dostęp do konta z dowolnego urządzenia",
nostrConnectBody: "Nostr Connect (zwany też „bunkerami”) pozwala przechowywać klucze na bezpiecznym serwerze i logować się z dowolnego urządzenia. Twoje klucze nigdy nie opuszczają serwera, ale możesz korzystać z konta wszędzie!",
nsecAppDesc: "Darmowy, bezpieczny zdalny signer. Utwórz URI bunker:// i wklej go przy logowaniu.",
nostrumDesc: "Kolejna opcja zdalnego signera z obsługą mobilną.",
howToUse: "💡 Jak używać:",
howToUseDesc: "Załóż konto w jednej z tych usług, pobierz swój ciąg połączenia bunker://, a następnie wklej go w zakładce „Nostr Connect” podczas logowania."
},
relayList: {
connected: "Połączono",
connecting: "Łączenie…",
offline: "Offline",
removeUrl: "Usuń {{url}}",
add: "Dodaj",
publishedTitle: "Lista relayów opublikowana",
publishedDesc: "Zsynchronizowano z Nostr (kind 10002).",
publishFailedTitle: "Nie udało się opublikować listy relayów",
invalidUrlTitle: "Nieprawidłowy URL relaya",
invalidUrlDesc: "Spróbuj czegoś takiego jak wss://relay.example.com",
alreadyInList: "Relay jest już na Twojej liście",
keepReadWriteTitle: "Zachowaj odczyt lub zapis",
keepReadWriteDesc: "Relay potrzebuje co najmniej jednego z: odczyt/zapis.",
alreadyInThisList: "Relay jest już na tej liście",
dmPublishedTitle: "Relaye DM opublikowane",
dmPublishedDesc: "Skrzynka NIP-17 zaktualizowana.",
dmPublishFailedTitle: "Nie udało się opublikować relayów DM",
nip65Title: "Relaye (NIP-65)",
nip65DescUser: "Dotknij Odczyt / Zapis, aby przełączyć. Publikowane w Nostr jako Twoja lista kind 10002.",
nip65DescLoggedOut: "Dotknij Odczyt / Zapis, aby przełączyć. Zaloguj się, aby opublikować listę w Nostr.",
noRelays: "Brak relayów — dodaj jeden poniżej.",
local: "Lokalny",
read: "Odczyt",
readHint: "Pobieraj treści z tego relaya",
write: "Zapis",
writeHint: "Publikuj swoje wydarzenia na tym relayu",
dmTitle: "Relaye skrzynki DM",
dmDesc: "Gdzie odbierasz bezpośrednie wiadomości NIP-17 (kind 10050). Gdy puste, używa Twoich relayów zapisu.",
localTitle: "Relaye lokalne",
localDesc: "Tylko w aplikacji (np. węzeł LAN). Używane do odczytu i zapisu; nigdy niepublikowane.",
blockedTitle: "Zablokowane relaye",
blockedDesc: "Nigdy się z nimi nie łącz — wykluczone z każdego odczytu i zapisu."
},
relatr: {
searchingTitle: "Szukam usługi Relatr...",
searchingDesc: "Odpytywanie Nostr o profile Relatr",
foundTitle: "Znaleziono usługę Relatr!",
foundDesc: "Usługa: {{name}}",
unknown: "Nieznana",
notFoundTitle: "Nie znaleziono usługi Relatr",
notFoundDesc: "Spróbuj wpisać pubkey ręcznie lub sprawdź https://www.relatr.xyz/",
searchFailedTitle: "Wyszukiwanie nie powiodło się",
searchFailedDesc: "Nie udało się odpytać Nostr o profile Relatr",
invalidPubkeyTitle: "Nieprawidłowy pubkey",
invalidPubkeyDesc: "Wpisz prawidłowy 64-znakowy pubkey hex",
enabledTitle: "Relatr włączony!",
enabledDesc: "Globalne oceny zaufania są teraz aktywne.",
disabledTitle: "Relatr wyłączony",
disabledDesc: "Oceny zaufania nie są już pobierane.",
title: "Oceny zaufania Relatr",
desc: "Globalne oceny zaufania pomagają identyfikować godnych zaufania użytkowników i ograniczać spam",
status: "Status",
active: "Aktywny",
disabled: "Wyłączony",
activeStrong: "Relatr jest aktywny.",
activeDesc: "Oceny zaufania z globalnej analizy sieci ContextVM pomagają identyfikować godnych zaufania skaterów i ograniczać spam.",
disabledStrong: "Relatr jest wyłączony.",
disabledHint: "Włącz go, aby otrzymywać oceny zaufania z globalnej sieci Nostr.",
disable: "Wyłącz Relatr",
enable: "Włącz Relatr",
advancedSettings: "Ustawienia zaawansowane",
servicePubkey: "Pubkey usługi Relatr",
pubkeyPlaceholder: "Wpisz 64-znakowy pubkey hex...",
searching: "Szukam...",
autoDiscover: "Automatyczne wykrywanie",
pubkeyDefault: "Domyślnie: oficjalna usługa Relatr ContextVM (npub1dvmc...)",
relayLabel: "Relay (gdzie Relatr publikuje oceny)",
relayDefault: "Domyślnie: wss://relay.contextvm.org (oficjalny relay ContextVM)",
applyChanges: "Zastosuj zmiany",
learnMore: "Dowiedz się więcej:",
website: "Strona Relatr",
github: "GitHub Relatr",
nip85Spec: "Specyfikacja NIP-85"
},
followList: {
unfollow: "Przestań obserwować",
title: "Twoja sieć Nostr",
desc: "Zarządzaj tym, kogo obserwujesz. Obserwowanie użytkowników pomaga budować Twoją sieć zaufania i decyduje, które spoty pokazują odznaki zaufania.",
following: "Obserwowani ({{count}})",
followers: "Obserwujący ({{count}})",
follow: "Obserwuj",
followHint: "💡 Wklej pubkey Nostr (npub1...), adres NIP-05 (user@domain.com) lub pubkey hex",
notFollowing: "Nikogo jeszcze nie obserwujesz",
notFollowingHint: "Obserwuj skaterów, aby widzieć ich spoty z odznakami ✅ ZWERYFIKOWANE",
trustActiveStrong: "✅ Odznaki zaufania aktywne:",
trustActive: "Spoty tworzone przez osoby, które obserwujesz, będą teraz pokazywać odznaki ZWERYFIKOWANE. Spoty ich znajomych będą pokazywać odznaki ZAUFANE.",
noFollowers: "Brak obserwujących",
noFollowersHint: "Udostępnij swój profil Nostr, aby zdobyć obserwujących!",
howTitle: "💡 Jak obserwowanie wpływa na odznaki zaufania",
verifiedStrong: "✅ ZWERYFIKOWANE (zielone):",
verifiedDesc: "Spoty tworzone przez osoby, które bezpośrednio obserwujesz",
trustedStrong: "🟡 ZAUFANE (żółte):",
trustedDesc: "Spoty tworzone przez osoby, które obserwują Twoi znajomi (2 kroki)",
unverifiedStrong: "⚪ Niezweryfikowane:",
unverifiedDesc: "Spoty użytkowników bez powiązania z Twoją siecią",
tip: "💡 Wskazówka: Obserwuj aktywnych skaterów, aby widzieć więcej zweryfikowanych spotów i budować swoją sieć zaufania!"
},
notify: {
enableTitle: "Włącz powiadomienia",
enableDesc: "Powiadom to urządzenie, gdy coś Cię dotyczy.",
checkingPermission: "Sprawdzanie uprawnień…",
unsupported: "To urządzenie nie obsługuje tutaj powiadomień. Przebuduj aplikację na Androida, aby włączyć je na telefonie.",
denied: "Powiadomienia są zablokowane dla tej strony. Zezwól na nie w ustawieniach przeglądarki/systemu i spróbuj ponownie.",
backgroundTitle: "Powiadomienia w tle",
backgroundDesc: "Otrzymuj powiadomienia o wiadomościach i transakcjach, nawet gdy SkateSpots jest zamknięty.",
pushUnsupported: "Ta przeglądarka nie obsługuje push w tle. Na telefonie dodaj SkateSpots do ekranu głównego.",
pushPrivacy: "Aby dotrzeć do Ciebie, gdy aplikacja jest zamknięta, serwer powiadomień SkateSpots otrzymuje sygnał z Twojego relaya, gdy coś przychodzi na Twój klucz, i przekazuje go do usługi push Twojego telefonu. Widzi tylko, że Twój klucz ma coś — nigdy kto to wysłał ani co mówi, i nie może odszyfrować Twoich wiadomości. Włącz to dla każdego urządzenia osobno.",
bgDeliveryTitle: "Dostarczanie w tle (Android)",
bgDeliveryDesc: "Sprawdzaj nowe wiadomości, oferty i transakcje, gdy aplikacja jest zamknięta — bez usług Google.",
off: "Wyłączone",
standard: "Standardowe (~15 min)",
fast: "Szybkie (~5 min)",
bgDeliveryNote: "Standardowe działa w miarę możliwości — Android może je odroczyć w trybie Doze. Szybkie pokazuje stałe powiadomienie i zużywa więcej baterii. Nic nie jest odszyfrowywane na naszym serwerze.",
notifyMeAbout: "Powiadom mnie o",
couldNotEnable: "Nie udało się włączyć",
sendTest: "Wyślij testowe powiadomienie",
testTitle: "Powiadomienia SkateSpots są włączone 🛹",
testBody: "Tak będzie wyglądać DM, zap lub zaproszenie do ekipy.",
footerBefore: "Alerty są tworzone na Twoim urządzeniu na podstawie danych, które aplikacja już ma, a alerty o wiadomościach bezpośrednich nigdy nie odszyfrowują wiadomości — więc Amber nigdy nie jest proszony o ich otwarcie. Gdy",
footerAfter: "jest wyłączone, całkowicie zamknięta aplikacja jest nieosiągalna, więc alerty dotrą przy następnym otwarciu SkateSpots.",
cat_dms_label: "Wiadomości bezpośrednie",
cat_dms_hint: "Ktoś wysyła Ci prywatną wiadomość",
cat_crew_label: "Ekipy",
cat_crew_hint: "Zaproszenia, prośby o dołączenie i potwierdzenia członkostwa",
cat_social_label: "Zapsy, odpowiedzi i wzmianki",
cat_social_hint: "Reakcje, reposty, zapsy, odpowiedzi i aktualizacje wydarzeń",
cat_newsletter_label: "Newsletter",
cat_newsletter_hint: "Nowości SkateSpots (tylko dla subskrybentów)",
cat_trades_label: "Oferty i transakcje",
cat_trades_hint: "Oferty, kontroferty i potwierdzenia transakcji",
cat_reminders_label: "Przypomnienia o wydarzeniach",
cat_reminders_hint: "Przypomnienie godzinę przed wydarzeniami, na które się wybierasz (aplikacja Android)"
},
regionBackfill: {
taggedTitle: "Oznaczono {{count}} spot{{s}}",
taggedSkipped: "{{count}} pominięto (brak współrzędnych lub brak dopasowania geokodera).",
taggedOk: "Tagi regionu zapisane na relayu społeczności.",
nothingTitle: "Nie ma czego oznaczać",
nothingDesc: "Nie udało się zgeokodować żadnych pinezek. Spróbuj ponownie później.",
failedTitle: "Uzupełnianie nie powiodło się",
title: "Uzupełnij tagi regionu",
admin: "Admin",
descBefore: "Pinezki utworzone przed wprowadzeniem geokodowania mają współrzędne, ale nie mają tagu miasta/kraju, więc mapa je rysuje, a Statystyki społeczności mogą powiedzieć tylko „Nieskategoryzowane”. To ponownie wyprowadza tagi z każdej pinezki i publikuje na nowo",
descStrong: "Twoje własne",
descAfter: "nieoznaczone spoty i sklepy.",
scanning: "Skanowanie Twoich spotów…",
allTagged: "Każdy spot i sklep, który posiadasz, ma już tag regionu. 🎉 Pozostałe „Nieskategoryzowane” pinezki należą do innych mapujących — tylko ich własne klucze mogą je oznaczyć.",
countLine: "{{count}} z Twoich spot{{s}}/sklepów nie ma tagu regionu. Twój signer może poprosić o zatwierdzenie każdego z osobna.",
tagging: "Oznaczanie {{done}}/{{total}}…",
run: "Uzupełnij tagi regionu",
summary: "{{updated}} zaktualizowano · {{skipped}} pominięto · {{failed}} niepowodzeń"
},
adminReview: {
title: "Kolejka przeglądu",
flagged: "{{count}} spot{{s}} wyzwala sygnały junk — ukryj lub odrzuć.",
clean: "Spoty, które wyglądają na wpisy testowe lub pinezki nie na temat."
},
grantPro: {
invalidNpub: "Wpisz prawidłowy npub (lub pubkey hex)",
invalidDays: "Liczba dni musi być liczbą dodatnią",
grantedTitle: "Pro przyznane ⚡",
grantedDesc: "{{npub}} do {{date}}",
failedTitle: "Przyznawanie nie powiodło się",
title: "Przyznaj Sasquatch Pro",
owner: "Właściciel",
desc: "Ręczne obejście dla zweryfikowanej płatności, którą przegapił paragon zapsa. Publikuje przyznanie podpisane przez właściciela; użytkownik nie może go podrobić.",
targetPlaceholder: "npub1… (lub hex)",
grant: "Przyznaj"
},
myData: {
reactionTitle: "Reakcja {{emoji}}",
deleting: "Usuwanie...",
requestDeletion: "Poproś o usunięcie",
selectContentTitle: "Wybierz treści do usunięcia",
selectContentDesc: "Wybierz konkretne elementy, dla których chcesz poprosić o usunięcie.",
all: "Wszystko",
spots: "Spoty",
events: "Wydarzenia",
shops: "Sklepy",
listings: "Ogłoszenia",
collections: "Kolekcje",
lab: "The Lab",
posts: "Posty",
reactions: "Reakcje",
selectAll: "Zaznacz wszystko",
selectAllVisible: "Zaznacz wszystkie widoczne",
selectedCount: "Zaznaczono {{count}}",
noItemsCategory: "Brak elementów w tej kategorii",
decentralizedStrong: "Ważne:",
decentralizedNote: "Nostr jest zdecentralizowany. Relaye powinny honorować prośby o usunięcie, ale niektóre mogą tego nie robić. To nie jest gwarantowane trwałe usunięcie.",
deleteCount: "Usuń {{count}} element{{s}}",
noDataTitle: "Brak danych do eksportu",
noDataDesc: "Nie opublikowałeś jeszcze żadnych wydarzeń.",
exportedTitle: "Dane wyeksportowane!",
exportedDesc: "Pobrano {{count}} wydarzeń jako JSON.",
deletionRequestedTitle: "Poproszono o usunięcie",
deletionRequestedDesc: "Prośba o usunięcie została opublikowana na relayach.",
deletionRequestedMany: "Poproszono o usunięcie {{count}} elementów. Uwaga: niektóre relaye mogą nie honorować tej prośby.",
deletionFailedTitle: "Usuwanie nie powiodło się",
deletionFailedDesc: "Nie udało się opublikować prośby o usunięcie. Spróbuj ponownie.",
loginRequired: "Wymagane logowanie",
loginRequiredDesc: "Zaloguj się, aby przeglądać swoje dane i zarządzać nimi.",
title: "Moje dane",
desc: "Twoje treści w sieci Nostr. Dane należą do Ciebie — eksportuj je w dowolnym momencie lub poproś o usunięcie.",
coachFilmer: "Trener/Filmer",
zaps: "Zapsy",
received: "Otrzymane",
exportAll: "Eksportuj wszystkie dane",
recentActivity: "Ostatnia aktywność",
viewAll: "Zobacz wszystkie ({{count}})",
noDataPublished: "Nie opublikowano jeszcze żadnych danych",
startBy: "Zacznij od",
addingASpot: "dodania spotu",
aboutYourData: "O Twoich danych",
ownDataStrong: "Posiadasz swoje dane.",
ownData: "Wszystkie treści są podpisane Twoimi kluczami kryptograficznymi i przechowywane na relayach Nostr. Żadna firma ich nie kontroluje.",
exportAnytimeStrong: "Eksportuj w dowolnym momencie",
exportAnytime: "- Pobierz wszystkie swoje wydarzenia jako JSON",
portableStrong: "Przenośne",
portable: "- Używaj swoich kluczy w dowolnej aplikacji Nostr",
selectiveStrong: "Selektywne usuwanie",
selective: "- Wybierz dokładnie, co usunąć",
caveatStrong: "Zastrzeżenie o decentralizacji",
caveat: "- Niektóre relaye mogą zachować dane mimo próśb o usunięcie"
},
settingsPage: {
seoTitle: "Ustawienia — SkateSpots",
seoDescription: "Zarządzaj ustawieniami swojego konta SkateSpots.",
heading: "USTAWIENIA",
subtitle: "Preferencje konta i aplikacji",
editProfile: "Edytuj profil",
profileRefreshed: "Profil odświeżony!",
found: "Znaleziono: {{name}}",
unnamed: "bez nazwy",
profileNotFound: "Nie znaleziono profilu",
notFoundOnRelay: "Nie znaleziono na żadnym relayu.",
refreshFailed: "Odświeżanie nie powiodło się",
refreshFailedDesc: "Nie udało się połączyć z relayami.",
loginToEdit: "Zaloguj się, aby edytować swój profil",
noProfileRelays: "Nie udało się znaleźć profilu na relayach. Jeśli ustawiłeś go wcześniej, spróbuj odświeżyć.",
checkDisplayName: "nazwę wyświetlaną",
checkPhoto: "zdjęcie profilowe",
checkBio: "krótkie bio",
checkLightning: "adres Lightning, aby ludzie mogli wysyłać Ci zapsy",
checkHandle: "darmowy handle @skate-spots.org",
finishProfile: "Dokończ swój profil",
addItem: "Dodaj {{item}}",
nip05Title: "Weryfikacja NIP-05",
nip05Desc: "Zdobądź zweryfikowany adres Nostr (np. imie@domena.com), aby budować zaufanie. Wymagany do tworzenia wydarzeń, profili trenerskich i sklepów.",
freeFromSkateSpots: "Darmowy od SkateSpots",
claimHandleBefore: "Zarezerwuj handle taki jak",
claimHandleAfter: "— bez rejestracji, bez kosztów, bez własnej domeny. Zarezerwuj go w zakładce Profil, a następnie zapisz.",
claimInProfile: "Zarezerwuj w Profilu",
nip05Footer: "Po uzyskaniu NIP-05 dodaj go w polu Profil i zapisz.",
localRelayOn: "Relay lokalny włączony",
localRelayOff: "Relay lokalny wyłączony",
lookingForCitrine: "Szukam Citrine na tym urządzeniu…",
noLongerUsing: "Nie używasz już relaya na urządzeniu.",
localRelay: "Relay lokalny",
citrineOff: "Szybsze odczyty i kopia offline na tym urządzeniu",
citrineSearching: "Szukam Citrine na tym urządzeniu…",
citrineLive: "Połączono — odczyt i kopia lokalna",
citrineWaiting: "Włączono — uruchom Citrine, aby się połączyć",
toggleCitrine: "Przełącz lokalny relay Citrine",
citrineDetected: "Wykryto relay Citrine",
citrineLooking: "Szukam Citrine…",
citrineNotDetected: "Nie wykryto Citrine",
recheckCitrine: "Sprawdź ponownie relay Citrine",
checking: "Sprawdzanie",
recheck: "Sprawdź ponownie",
chipInstantReads: "Natychmiastowe odczyty",
chipWorksOffline: "Działa offline",
chipOnDeviceBackup: "Kopia na urządzeniu",
cantReachStrong: "Nie można połączyć się z Citrine.",
cantReachBefore: "Upewnij się, że darmowa aplikacja Citrine jest zainstalowana, a jej relay jest",
started: "uruchomiony",
cantReachAfter: ", a następnie dotknij Sprawdź ponownie. Uruchamia prywatny relay Nostr na Twoim telefonie dla natychmiastowych odczytów i kopii offline.",
citrineStep1Before: "Otwórz Citrine → dotknij",
start: "Start",
citrineStep2Before: "Wróć tutaj → dotknij",
getCitrine: "Pobierz Citrine",
citrinePrivacy: "Twój Stash i wiadomości pozostają tu kompleksowo szyfrowane, dokładnie jak wszędzie indziej. Lokalny relay tylko przyspiesza działanie i trzyma kopię na urządzeniu — nigdy nie zastępuje szyfrowania.",
communityRelayDisabled: "Relay społeczności wyłączony",
communityRelayEnabled: "Relay społeczności włączony",
usingOnlyPersonal: "Używasz tylko swoich skonfigurowanych relayów.",
skateRelayIncluded: "Relay SkateSpots włączony.",
relays: "Relaye",
relayPrivacyBefore: "Relaye mogą zobaczyć Twój",
ipAddress: "adres IP",
relayPrivacyAfter: "gdy się łączysz. Tor go ukrywa — a „darmowy” VPN traktuj jako sygnał ostrzegawczy; zwykle zarabiają na Twoim ruchu.",
communityRelay: "Relay społeczności",
syncingGlobal: "Synchronizacja z globalną społecznością skate",
usingOnlyPersonalShort: "Używasz tylko osobistych relayów",
appearance: "Wygląd",
language: "Język",
darkModeOnly: "Tylko tryb ciemny",
darkModeDesc: "SkateSpots działa w ciemnej, neonowej estetyce inspirowanej kulturą skate. Czarne tło, neonowy róż, limonka i pomarańcz.",
navigation: "Nawigacja",
sasquatchExpanded: "Sasquatch został rozwinięty! 🦧 Odśwież stronę, aby go zobaczyć.",
advanced: "Zaawansowane",
sasquatchGuide: "🦧 Przewodnik Sasquatcha",
sasquatchResetDesc: "Zresetuj przewodnik powitalny do widoku rozwiniętego",
expandSasquatch: "Rozwiń The Sasquatch",
wallet: "Portfel",
loginToWallet: "Zaloguj się, aby zarządzać portfelem",
openWallet: "Otwórz portfel",
balanceSendReceive: "Saldo, wyślij, odbierz",
connectNwc: "Połącz portfel NWC",
account: "Konto",
security: "Bezpieczeństwo",
securitySub: "Klucze, podpisywanie, Amber",
nip05Sub: "Zdobądź zweryfikowany adres Nostr",
app: "Aplikacja",
myStash: "My Stash",
myStashSub: "Prywatny inwentarz sprzętu",
relaysSub: "Połączenia z relayami Nostr",
appearanceSub: "Język i motyw",
assistant: "Asystent",
showSasquatch: "Pokaż asystenta Sasquatch",
showSasquatchDesc: "Pokaż pływający przycisk Sasquatcha na mapie i innych ekranach.",
showMapFooter: "Pokaż pasek linków mapy",
showMapFooterDesc: "Pokaż cienki pasek linków na dole mapy.",
notifications: "Powiadomienia",
notificationsSub: "Alerty o DM, ekipach i zapsach",
coordinator: "Koordynator",
coordinatorSub: "Twój serwer grupowy Cordn",
data: "Dane",
myData: "Moje dane",
myDataSub: "Eksportuj, importuj, zarządzaj",
advancedSub: "Relatr, Sasquatch, narzędzia",
notLoaded: "Nie wczytano",
notLoggedIn: "Nie zalogowano"
},
onboarding: {
seoTitle: "Zacznij — SkateSpots",
seoDescription: "Dołącz do zdecentralizowanej społeczności skateboardingu. Znajdź spoty, połącz się z trenerami, wysyłaj zapsy. Darmowe na zawsze.",
homeSetTitle: "Dom ustawiony 🛹",
homeSetDesc: "Mapa będzie się teraz otwierać na Twoim obszarze.",
locationFailedTitle: "Nie udało się pobrać Twojej lokalizacji",
locationFailedDesc: "Sprawdź uprawnienia do lokalizacji lub wybierz swój obszar na mapie.",
niceTitle: "🎉 Świetnie!",
niceDesc: "Rozumiesz już, jak działa Nostr. Jedziemy!",
npubCopied: "npub skopiowany do schowka.",
saveLoginNow: "Zapisz swój login — zrób to teraz",
saveLoginNowDesc: "Twój kod odzyskiwania to jedyna droga powrotna do konta. Bez e-maila, bez resetowania hasła.",
betaBadge: "Beta — otwarte dla skaterów na całym świecie",
headline1: "JEŹDŹ",
headline2: "W SWOIM ŚWIECIE",
heroBefore: "To",
decentralized: "zdecentralizowana",
heroAfter: "społeczność skate. Żadna firma jej nie posiada. Żaden algorytm nie zakopuje Twoich spotów. Żaden ban. Tylko skaterzy.",
pillMap: "Mapa spotów",
pillCoaches: "Trenerzy i filmerzy",
pillEvents: "Wydarzenia",
pillGear: "Kup/sprzedaj sprzęt",
pillZaps: "Zapsy Bitcoin",
pillStash: "Stash sprzętu",
pillCrews: "Ekipy",
createFreeAccount: "Załóż darmowe konto",
noEmailNoPassword: "Bez e-maila. Bez hasła. Twoja tożsamość na zawsze należy do Ciebie.",
findSpots: "Znajdź spoty w pobliżu",
addFirstSpot: "Dodaj swój pierwszy spot",
accountCreated: "Jesteś w środku! Konto utworzone ✓",
identityYours: "Twoja tożsamość należy do Ciebie — przechowywana w Twoim kluczu, nie na naszych serwerach.",
whereSkate: "Gdzie jeździsz?",
whereSkateDesc: "Ustaw swój domowy obszar raz, a mapa będzie się otwierać na Twoich spotach za każdym razem. Twój GPS nigdy nie opuszcza urządzenia.",
useMyLocation: "Użyj mojej lokalizacji",
pickOnMap: "Wybierz na mapie",
loginSaved: "Login zapisany — Twoje konto można bezpiecznie odzyskać.",
whyBother: "Po co się tym przejmować?",
why1Title: "Każdy spot, jedna mapa",
why1Body: "Krawężniki, poręcze, DIY, parki — mapowane przez skaterów, którzy naprawdę na nich jeżdżą. Sprawdź status, zanim ruszysz, żeby nie zmarnować sesji na wyproszeniu.",
why2Title: "Tworzone przez skaterów, nie garnitury",
why2Body: "Bez reklam, bez algorytmu wpychającego śmieci w Twarz, bez zbierania danych. Open source. Mapa należy do społeczności — w tym do Ciebie.",
why3Title: "Zarabiaj za jeżdżenie",
why3Body: "Zamapuj perełkę, nagraj kocura, poprowadź sesję — i zgarniaj prawdziwego Bitcoina zapsem prosto do portfela. Bez prowizji platformy, bez pośredników.",
why4Title: "Twoje konto naprawdę należy do Ciebie",
why4Body: "Jeden klucz loguje Cię do każdej aplikacji Nostr. Żadna firma nie może Cię zablokować ani usunąć konta według kaprysu. Zabierz swoją tożsamość wszędzie.",
everythingFree: "Wszystko, co możesz robić — za darmo",
featSpots: "Odkrywaj spoty",
featSpotsDesc: "Interaktywna mapa z tysiącami spotów na całym świecie",
featLab: "The Lab",
featLabDesc: "Znajdź trenerów, filmerów i montażystów wideo w pobliżu",
featEvents: "Wydarzenia",
featEventsDesc: "Zawody, sesje, spotkania",
featGear: "Kup / sprzedaj sprzęt",
featGearDesc: "Marketplace peer-to-peer na używany sprzęt skate",
featStash: "My Stash",
featStashDesc: "Prywatny, zaszyfrowany inwentarz wszystkiego, co posiadasz",
featCrews: "Ekipy",
featCrewsDesc: "Jeźdź ze swoją ekipą — wspólne spoty, czat i sesje",
whatIsNostr: "Czym jest Nostr?",
whatIsNostrSub: "Protokół, który napędza SkateSpots",
nostrBefore: "Nostr to otwarty protokół — jak e-mail, ale dla aplikacji społecznościowych. Twoje konto to",
cryptoKeyPair: "para kluczy kryptograficznych",
nostrAfter: "która należy do Ciebie. Żadna pojedyncza firma nie kontroluje Twojego konta ani danych — Ty wybierasz, które relaye je przechowują, i możesz nawet uruchomić własny. Twoja tożsamość działa w każdej aplikacji Nostr.",
nostrPoint1: "Posiadasz swoje dane i klucze",
nostrPoint2: "Żadna firma nie może Cię zbanować",
nostrPoint3: "Tożsamość działa wszędzie",
nostrPoint4: "Bezpośrednie napiwki Bitcoin",
deepDive: "Głębiej: jak działa Nostr",
privacyTip: "Wskazówka o prywatności: Twój GPS nigdy nie opuszcza urządzenia. Serwery, z którymi się łączysz (np. kafle mapy), nadal mogą widzieć Twoje IP — jeśli chcesz ukryć i to, VPN lub Tor działa. Całkowicie opcjonalne.",
readPrivacy: "Przeczytaj naszą stronę o prywatności",
zapsWallet: "⚡ Zapsy i portfel",
optional: "Opcjonalne",
walletDesc: "Zapsy to napiwki Bitcoin, które wysyłasz bezpośrednio skaterowi, który dodał zajebisty spot, nagrał kocura lub poprowadził świetną sesję. Bez opłat platformy. Bez pośredników. 100% trafia do niego.",
builtInWallet: "Wbudowany portfel Cashu",
builtInWalletDesc: "Otrzymuj płatności Lightning prosto w aplikacji. Bez konfiguracji.",
balance: "Saldo",
connectExternal: "Połącz zewnętrzny portfel",
connectExternalDesc: "Masz Alby, Mutiny lub inny portfel? Połącz go przez NWC.",
connectViaNwc: "Połącz przez NWC",
loginToConnect: "Zaloguj się, aby połączyć własny portfel.",
fiveDollars: "💡 5 $ w Bitcoinie = setki zapsów do rozdania w społeczności",
commonQuestions: "Częste pytania",
faq1Q: "Czy SkateSpots jest darmowy?",
faq1A: "W 100% darmowy. Przeglądaj spoty, dodawaj lokalizacje, znajdź trenerów, twórz wydarzenia, dołączaj do sesji — wszystko darmowe, na zawsze. Bitcoin (zapsy) jest opcjonalny, jeśli chcesz dawać napiwki twórcom.",
faq2Q: "Czym jest Nostr i dlaczego SkateSpots go używa?",
faq2Before: "Nostr to otwarty protokół dla zdecentralizowanych aplikacji — pomyśl o nim jak o samym internecie, nieposiadanym przez żadną firmę. Twoje konto SkateSpots to para kluczy kryptograficznych, którą",
faq2Strong: "posiadasz",
faq2After: ". Żadna pojedyncza firma nie może zbanować Twojego konta ani przetrzymywać Twoich danych jako zakładnika — Ty wybierasz, które relaye przechowują Twoje dane, i możesz nawet uruchomić własne. Twoja tożsamość działa też w innych aplikacjach Nostr, takich jak Primal, Damus czy Amethyst.",
faq3Q: "Czym jest nsec i dlaczego jest ważny?",
faq3Before: "Twój",
faq3Mid: "to Twój klucz prywatny — jedyny dowód, że posiadasz swoje konto. W przeciwieństwie do haseł istnieje",
faq3Strong: "brak „nie pamiętam hasła”",
faq3After: ". Jeśli zgubisz swój nsec, Twoje konto przepadnie na zawsze. Gdy tworzysz konto, od razu pobierz kopię zapasową i przechowuj ją w bezpiecznym miejscu (menedżer haseł, zapisana offline).",
faq4Q: "Które signery / aplikacje działają ze SkateSpots?",
faq4Desktop: "Na komputerze:",
faq4Extensions: "rozszerzenia przeglądarki.",
faq4Android: "Na Androidzie:",
faq4AndroidAfter: "(najlepsze doświadczenie z aplikacją natywną).",
faq4Ios: "Na iOS:",
faq4IosAfter: "lub wklej swój nsec bezpośrednio (mniej bezpieczne).",
faq4Note: "Możesz też zalogować się, wklejając swój nsec bezpośrednio — ale użycie rozszerzenia signera jest bezpieczniejsze.",
faq5Q: "Czy mogę używać SkateSpots na telefonie?",
faq5Before: "Tak! SkateSpots to PWA (Progressive Web App). Odwiedź",
faq5Mid: "w przeglądarce telefonu i dotknij",
faq5Em: "„Dodaj do ekranu głównego”",
faq5After: "aby uzyskać pełne doświadczenie aplikacji. Możesz też pobrać ją z",
faq5End: "— zdecentralizowanego sklepu z aplikacjami.",
faq6Q: "Czym jest zap?",
faq6A: "Zap to natychmiastowy napiwek Bitcoin wysyłany przez Lightning Network. Gdy wysyłasz zaps skaterowi, sats trafiają do jego portfela w kilka sekund — bez PayPal, bez Venmo, bez prowizji. Osoba, która nagrała ten set, dostaje zapłatę bezpośrednio od fanów.",
faq7Q: "Czy moje spoty zostaną usunięte, jeśli SkateSpots zostanie zamknięty?",
faq7A: "Nie. Twoje spoty są publikowane na relayach Nostr — rozproszonych serwerach, które każdy może prowadzić. Nawet jeśli SkateSpots jako produkt zniknąłby jutro, Twoje dane nadal istniałyby na relayach i każdy klient Nostr mógłby je wyświetlić.",
faq8Q: "Czy mogę dodać spot na prywatnym terenie?",
faq8A: "Możesz, ale kieruj się zdrowym rozsądkiem. Spoty na prywatnym terenie powinny być odpowiednio oznaczone, żeby skaterzy wiedzieli, na czym stoją. SkateSpots nie odpowiada za wtargnięcie — zawsze szanuj właścicieli i miejscowych.",
faq9Q: "Jak zgłosić błąd lub przekazać opinię?",
faq9Before: "Napisz bezpośrednio do zespołu SkateSpots na Nostr lub skontaktuj się z naszym koordynatorem bety:",
faq9Link: "Opinie o becie → cordn.net",
readyToShred: "GOTOWY DO SHREDOWANIA?",
stopScrolling: "Przestań przewijać. Weź aplikację. Znajdź spot. Pojeźdź.",
exploreSpots: "Przeglądaj spoty",
betaFeedbackTitle: "Beta — chcemy Twojej opinii",
betaFeedbackDesc: "SkateSpots jest w aktywnym rozwoju. Możesz natrafić na niedoróbki — to nasza wina, nie Twoja. Zgłaszaj błędy, proponuj funkcje, mów nam, co jest do bani.",
betaCoordinator: "Koordynator bety",
betaCoordinatorDesc: "cordn.net → napisz do nas",
dmOnNostr: "DM na Nostr",
fixSameDay: "Znalazłeś błąd? Naprawiamy go tego samego dnia. Twoje zgłoszenia czynią aplikację lepszą dla każdego skatera.",
relaySetup: "Konfiguracja relayów"
},
relayEdu: {
understandingNostr: "Zrozumieć Nostr",
stepOf: "Krok {{current}} z {{total}}",
step1Title: "Zrozumieć relaye",
step1Desc: "Wyobraź sobie relaye jako sklepy skate'owe, które dzielą się wieściami o spotach",
you: "Ty",
relays: "Relaye",
skaters: "Skaterzy",
s1Good1: "Żadna firma nie jest właścicielem Twojego konta",
s1Good1Desc: "Twoja tożsamość mieszka na wielu serwerach relay",
s1Good2: "Kontrolujesz, gdzie mieszkają Twoje dane",
s1Good2Desc: "Twoje posty synchronizują się między wybranymi relayami — wybierz własne lub uruchom własny",
s1Warn: "Operatorzy relayów widzą publiczne posty",
s1WarnDesc: "Pomyśl o tym jak o publikowaniu na tablicy ogłoszeń",
step2Title: "Publiczne vs prywatne",
step2Desc: "Wiedz, co jest widoczne, a co zaszyfrowane",
publicTitle: "Publiczne (każdy może zobaczyć)",
pub1: "Spoty, które dodajesz do mapy",
pub2: "Opinie i komentarze",
pub3: "Informacje z Twojego profilu (imię, zdjęcie)",
pub4: "Kogo obserwujesz",
privateTitle: "Prywatne (zaszyfrowane)",
priv1: "Wiadomości bezpośrednie",
priv2: "Komunikacja z portfelem",
noteStrong: "Uwaga:",
note: "Posty mogą być przechowywane na relayach na stałe. Pomyśl, zanim coś opublikujesz — tak jak w prawdziwym życiu!",
step3Title: "Twoje klucze = Twoje konto",
step3Desc: "To najważniejsza rzecz do zrozumienia",
secretKeyTitle: "Twój klucz tajny (nsec)",
secretKeyDesc: "Pomyśl o nim jak o swojej desce — nigdy nikomu jej nie pożyczaj. Potwierdza, że posiadasz swoje konto.",
s3Bad1: "Jeśli go zgubisz, konta nie da się odzyskać",
s3Bad2: "Bez „nie pamiętam hasła” — nikt nie może go zresetować",
s3Good: "Zrób kopię zapasową i przechowuj go bezpiecznie",
publicKeyTitle: "Twój klucz publiczny (npub)",
publicKeyDesc: "To jak Twoja nazwa użytkownika — udostępniaj go swobodnie, aby inni mogli Cię znaleźć!",
inControl: "🔐 Masz kontrolę — żadna firma nie może Cię zablokować!",
skip: "Pomiń",
gotIt: "Rozumiem!"
},
about: {
seoTitle: "O nas — SkateSpots",
seoDescription: "Dowiedz się o SkateSpots i naszej misji budowania zdecentralizowanej społeczności skateboardingu.",
npubCopied: "npub skopiowany do schowka. Wklej go w ulubionym kliencie Nostr, aby wysłać DM.",
bugReport: "🐛 Zgłoszenie błędu",
bugWhatHappened: "Co się stało:",
bugExpected: "Czego oczekiwałem:",
bugSteps: "Kroki do odtworzenia:",
aboutWord: "O NAS",
heroBefore: "Łącz się z lokalnymi scenami skate'owymi na całym świecie.",
skaterOwned: "Dane należące do skaterów",
heroAfter: ", relaye prowadzone przez społeczność.",
viewStats: "Zobacz statystyki społeczności",
missionTitle: "Nasza misja",
mission1: "SkateSpots pomaga skaterom odkrywać spoty, łączyć się z profesjonalistami w The Lab i organizować sesje — bez korporacyjnej kontroli. Prawdziwe jeżdżenie dzieje się offline, to narzędzie tylko Cię z nim łączy.",
mission2: "Wiedza o skateboardingu powinna mieszkać ze społecznością, a nie być zamknięta w korporacyjnych aplikacjach. Dlatego SkateSpots działa na Nostr — systemie opartym na relayach, w którym skaterzy kontrolują własne dane, wybierają, które relaye je przechowują, i mogą nawet uruchomić własne. Żadna firma nie jest właścicielem mapy.",
whyNostr: "Dlaczego Nostr?",
why1Title: "Kontrolowany przez społeczność",
why1Desc: "Twoje spoty mieszkają na relayach społeczności. Serwery prowadzą skaterzy, nie korporacje.",
why2Title: "Posiadasz swoje dane",
why2Desc: "Twoja tożsamość Nostr należy do Ciebie. Zabierz ją do dowolnej aplikacji Nostr — bez przywiązania.",
why3Title: "Integracja z Bitcoinem",
why3Desc: "Wysyłaj zapsy twórcom bezpośrednio w Bitcoinie. Żadna platforma nie zabiera 30%.",
why4Title: "Open source",
why4Desc: "Tworzony otwarcie. Każdy może współtworzyć lub rozwidlić kod.",
getInvolved: "Zaangażuj się",
getInvolvedDesc: "SkateSpots jest open source i napędzany przez społeczność. Współtwórz kod, udostępniaj spoty lub pomagaj innym zacząć.",
betaTitle: "Testy beta",
betaDesc: "Drogi Użytkowniku! Dziękujemy za testowanie SkateSpots w wersji beta. Pamiętaj, że aplikacja jest wciąż w fazie beta i mogą występować błędy lub problemy z bezpieczeństwem. Jeśli napotkasz problemy lub chcesz zgłosić błąd, odezwij się!",
giveFeedback: "Przekaż nam opinię:",
copyNpub: "Kopiuj npub",
reportBug: "Zgłoś błąd",
viewProfile: "Zobacz profil",
downloadApp: "Pobierz aplikację",
downloadAppDesc: "Zainstaluj SkateSpots na Androidzie przez Zapstore — open source'owy sklep z aplikacjami natywny dla Bitcoina.",
getOnZapstore: "Pobierz z Zapstore",
credits: "Twórcy",
creditPoweredBy: "Napędzane przez",
creditNostr: "Zdecentralizowany protokół",
creditCrewChat: "Czat ekipy przez",
creditCordn: "Kompleksowo szyfrowany czat grupowy",
creditEcash: "Ecash przez",
creditCashu: "Ecash Chaumiana dla Lightning",
creditWalletConnect: "Połączenie z portfelem przez",
creditNwc: "Nostr Wallet Connect (NIP-47)",
creditSigning: "Podpisywanie na Androidzie z",
creditAmber: "Signer Nostr na Androida",
creditMapData: "Dane mapy Bitcoin z",
creditBtcmap: "Miejsca akceptujące Bitcoina",
creditCrowdfunding: "Crowdfunding",
creditAngor: "Zdecentralizowany crowdfunding Bitcoin",
creditDistributed: "Dystrybuowane przez",
creditZapstore: "Sklep z aplikacjami open source",
creditTrust: "Zaufanie i czat ekipy przez",
creditContextvm: "Oceny zaufania Relatr i koordynacja szyfrowanego czatu ekipy",
stillQuestions: "Masz jeszcze pytania?",
stillQuestionsDesc: "Sasquatch to nasz przewodnik AI — napędzany danymi SkateSpots na żywo. Zapytaj go o spoty, wydarzenia, trenerów, sprzęt lub jak coś działa.",
askSasquatch: "Zapytaj The Sasquatch",
poweredBy: "Napędzane przez",
decentralized: "Zdecentralizowany",
communityOwned: "Należący do społeczności"
},
faq: {
seoTitle: "FAQ — SkateSpots",
seoDescription: "Zapytaj The Sasquatch o cokolwiek związanego z SkateSpots.",
greeting: "Hej! Jestem The Sasquatch 🦧 — pytaj mnie o cokolwiek związanego z SkateSpots. Spoty, wydarzenia, sprzęt, portfele, prywatność, Nostr — służę pomocą. Co chcesz wiedzieć?",
gotQuestions: "Masz pytania?",
heroDesc: "Zapytaj The Sasquatch — wie wszystko o SkateSpots, Nostr, Bitcoinie i skateboardingu.",
askTitle: "Zapytaj The Sasquatch",
askDesc: "The Sasquatch jest otwarty w lewym dolnym rogu ekranu — kliknij go i wpisz swoje pytanie. Ma dostęp na żywo do spotów, wydarzeń, trenerów i pogody.",
askQuestion: "W czym możesz mi pomóc w SkateSpots?",
openSasquatch: "Otwórz The Sasquatch",
commonQuestions: "Częste pytania — dotknij, aby zapytać",
quickAnswers: "Szybkie odpowiedzi",
footerHint: "The Sasquatch korzysta z danych Nostr na żywo z relaya SkateSpots + AI, aby odpowiadać na Twoje pytania. 🛹",
chip1Label: "Czym jest SkateSpots?",
chip1Q: "Czym jest SkateSpots i jak działa?",
chip2Label: "Jak dodać spot?",
chip2Q: "Jak dodać spot do mapy?",
chip3Label: "Czym są zapsy?",
chip3Q: "Czym są zapsy?",
chip4Label: "Czy to darmowe?",
chip4Q: "Czy SkateSpots jest darmowy?",
chip5Label: "Czym jest My Stash?",
chip5Q: "Czym jest My Stash?",
chip6Label: "Jak się zalogować?",
chip6Q: "Jak się zalogować lub utworzyć konto?",
chip7Label: "Czym jest Nostr?",
chip7Q: "Czym jest Nostr?",
chip8Label: "Prywatność i dane",
chip8Q: "Które dane są publiczne, a które prywatne w SkateSpots?",
chip9Label: "Jak sprzedać sprzęt?",
chip9Q: "Jak sprzedać sprzęt na SkateSpots?",
chip10Label: "Czym jest The Lab?",
chip10Q: "Czym jest The Lab?",
fact1Label: "Spoty na całym świecie",
fact1Value: "Odkrywaj i dodawaj",
fact2Label: "Zapsy Bitcoin Lightning",
fact2Value: "100% darmowe",
fact3Label: "Zdecentralizowany na Nostr",
fact3Value: "Posiadasz swoje dane",
fact4Label: "Prywatny inwentarz sprzętu",
fact4Value: "Zaszyfrowany Stash",
s1Q: "Czym jest SkateSpots?",
s1A: "Zdecentralizowana mapa i społeczność skateboardingu, zbudowana na Nostr. Odkrywaj spoty, znajdź trenerów i filmerów, dołączaj do ekip, publikuj wydarzenia i kupuj/sprzedawaj sprzęt — bez firmy pośrodku.",
s2Q: "Jak dodać spot?",
s2A: "Dotknij mapy lub użyj przycisku + / „Dodaj spot”, następnie upuść pinezkę i wypełnij szczegóły. Potrzebujesz darmowego konta Nostr (dotknij Zaloguj się → Utwórz konto — e-mail nie jest wymagany).",
s3Q: "Czym są zapsy?",
s3A: "Zapsy to napiwki Bitcoin Lightning. Możesz wysyłać zapsy spotom, wydarzeniom, ekipom i osobom, które doceniasz. Trafiają prosto do odbiorcy przez Lightning — SkateSpots nigdy nie przechowuje Twoich środków.",
s4Q: "Czy to darmowe?",
s4A: "Tak. Tworzenie konta, dodawanie spotów i przeglądanie są darmowe. Opcjonalne płatne dodatki (np. wyróżnione ogłoszenia) i napiwki (zapsy) są płacone bezpośrednio między ludźmi.",
s5Q: "Które dane są publiczne?",
s5A: "Wszystko, co publikujesz — spoty, wydarzenia, Twój profil — jest publiczne na relayach Nostr. Twoje prywatne wiadomości i Twój Stash są kompleksowo szyfrowane. Szczegóły znajdziesz na stronie Prywatność.",
s6Q: "Czym jest The Lab?",
s6A: "The Lab to miejsce, w którym znajdziesz osoby do zatrudnienia lub nauki: trenerów, szkoleniowców, filmerów, montażystów wideo, fotografów, budowniczych, artystów i innych."
},
privacy: {
seoTitle: "Prywatność — SkateSpots",
seoDescription: "Jak SkateSpots obchodzi się z Twoimi danymi: Twój GPS zostaje na urządzeniu, publikowane spoty są publiczne, a oto jak ukryć IP przez VPN lub Tor, jeśli chcesz.",
heroBefore: "Twoja",
heroHighlight: "Prywatność",
heroDesc: "Bez śledzenia, bez reklam, bez sprzedaży danych. Oto dokładnie, co zostaje na Twoim urządzeniu, co jest publiczne i jak dodatkowo się zabezpieczyć, jeśli chcesz.",
locationTitle: "Twoja lokalizacja zostaje na urządzeniu",
locationBefore: "Gdy dotkniesz",
nearMe: "„W pobliżu”,",
locationAfter: "Twoja lokalizacja GPS jest odczytywana na urządzeniu i używana tylko do wyśrodkowania mapy i sortowania pobliskich spotów.",
locationGood1: "Nigdy nie jest publikowana w Nostr.",
locationGood2: "Nigdy nie jest wysyłana do SkateSpots — nie ma serwera SkateSpots, który by ją zbierał.",
locationGood3: "Nigdy nie jest udostępniana żadnej stronie trzeciej.",
locationGood4: "W aplikacji natywnej używamy bezpośrednio systemu lokalizacji telefonu i pomijamy Google Play Services — więc działa na telefonach bez Google (GrapheneOS, /e/OS), a Google nigdy jej nie widzi.",
weatherBefore: "Pogoda jest domyślnie wyłączona. Gdy ją włączysz, sprawdza warunki dla",
weatherEm: "publicznej",
weatherAfter: "lokalizacji spotu — nie Twojej.",
publicTitle: "Co jest publiczne z założenia",
publicDesc: "SkateSpots to wspólna mapa, więc niektóre rzeczy są przeznaczone dla wszystkich. Gdy zdecydujesz się je opublikować, są publiczne w sieci Nostr:",
public1Strong: "Spoty, które dodajesz",
public1: "— wraz z ich współrzędnymi. Jeśli dodasz spot w swojej dokładnej lokalizacji, ta lokalizacja staje się publiczna. Pomyśl, zanim upuścisz pinezkę na własnym podjeździe.",
public2Strong: "Opinie, komentarze i Twój publiczny profil",
public2: "(imię, zdjęcie).",
public3: "Kogo obserwujesz i publiczne reakcje.",
public4Strong: "Zapsy",
public4: "są domyślnie publiczne: zap łączy Twoje konto — często Twój adres Lightning — z postem, za który zapłaciłeś, i z samym napiwkiem. Twój portfel może wysłać go anonimowo, jeśli wolisz, żeby tak nie było.",
publicNoteBefore: "VPN lub Tor",
notWord: "nie",
publicNoteAfter: "ukrywa treści tego, co publikujesz — współrzędne spotu są publiczne niezależnie od tego. Narzędzia prywatności ukrywają Twoją tożsamość sieciową (IP), a nie rzeczy, które zdecydujesz się opublikować.",
encryptedTitle: "Co jest prywatne i zaszyfrowane",
enc1Strong: "Wiadomości bezpośrednie",
enc1Mid: "i",
enc1Strong2: "czaty ekip",
enc1: "są kompleksowo szyfrowane (NIP-17). Tylko uczestnicy mogą je czytać.",
enc2Strong: "My Stash",
enc2: "— Twój prywatny inwentarz sprzętu — jest zaszyfrowany Twoim własnym kluczem.",
enc3Strong: "Członkowie tylko swojej ekipy",
enc3: "mogą wybrać widoczność wyłącznie dla swoich kolegów z ekipy.",
ipTitle: "Co opuszcza Twoje urządzenie: Twoje IP",
ipBefore: "Jak każda strona internetowa, serwery, z którymi rozmawia SkateSpots, mogą zobaczyć Twój",
ipAddress: "adres IP",
ipAfter: "(przybliżony wskaźnik Twojego regionu). To normalne dla każdej aplikacji webowej i mapowej i nie jest czymś, co wyróżnia nas. Te serwery to:",
ipTileStrong: "Kafle mapy",
ipTile: "(OpenStreetMap) — widzą Twoje IP i to, na który obszar mapy patrzysz.",
ipGeoStrong: "Geokodowanie spotów/sklepów",
ipGeo: "— gdy tworzysz lub edytujesz spot lub sklep, jego współrzędne trafiają do OpenStreetMap Nominatim, aby uzupełnić tag miasta/kraju. Gdy otwierasz Statystyki społeczności, współrzędne pinezek bez tagu lokalizacji trafiają do BigDataCloud, aby można je było pogrupować według regionu (buforowane na urządzeniu — najwyżej raz na pinezkę). Oba widzą Twoje IP. To pinezka, którą umieściłeś / publiczne współrzędne pinezki, nigdy bieżący GPS Twojego urządzenia.",
ipPushStrong: "Powiadomienia w tle",
ipPush: "(opcjonalne) — jeśli je włączysz, serwer push SkateSpots widzi, że Twój klucz coś otrzymał i kiedy (nigdy kto to wysłał ani co mówi — wiadomości pozostają zaszyfrowane), a usługa push Twojego systemu (Google/Mozilla/Apple) dostarcza alert.",
ipBtcStrong: "Miejsca Bitcoin",
ipBtc: "(BTCMap, gdy włączysz tę warstwę) — widzą Twoje IP i obszar, który przeglądasz.",
ipRelayStrong: "Relaye Nostr",
ipRelay: "— widzą Twoje IP, gdy aplikacja czyta lub publikuje.",
ipMintStrong: "Minty Cashu",
ipMint: "— widzą Twoje IP, gdy Twój portfel wysyła, odbiera lub wymienia.",
ipRouteStrong: "Trasy",
ipRoute: "(OSRM, a dla transportu publicznego Transitous) — otrzymują początek i koniec każdej trasy, o którą poprosisz, nie tylko Twoje IP. Wyznaczanie trasy zostaje w aplikacji: Twój start i cel nigdy nie są przekazywane do Map Google ani Apple.",
ipWeatherStrong: "Pogoda",
ipWeatherMid: "(Open-Meteo, opcjonalnie) i",
ipUploadStrong: "przesyłanie obrazów",
ipWeather: "(Blossom), gdy z nich korzystasz.",
ipAiStrong: "AI Sasquatcha",
ipAi: "— Twoja wiadomość trafia na nasz własny serwer, a następnie do dostawcy modelu.",
ipLink1: "Ponieważ wysyłasz swój klucz publiczny (npub) na tym samym połączeniu, relay może powiązać Twoje IP z Tobą — nie tylko „ktoś się połączył”, ale „ta osoba, z tego adresu”.",
ipShieldBefore: "Jedna rzecz, którą osłaniamy:",
ipMintsStrong: "katalog mintów",
ipShieldAfter: "jest pobierany przez nasz serwer, więc MintRadar nigdy nie widzi Twojego IP.",
vpnTitle: "Chcesz więcej prywatności? VPN lub Tor (opcjonalnie)",
vpnDesc: "Dla większości skaterów nie jest to konieczne — ale jeśli chcesz ukryć swoje IP i przybliżoną lokalizację przed powyższymi serwerami, masz dwie darmowe opcje:",
vpnReputable: "🛡️ Zaufany VPN",
vpnReputableDesc: "Ukrywa Twoje IP za serwerami VPN. Łatwy i szybki. Używaj takiego, za który płacisz i któremu ufasz; darmowe VPN-y zwykle zarabiają na Twoim ruchu, więc „darmowy” traktuj jako sygnał ostrzegawczy.",
torBrowser: "🧅 Przeglądarka Tor",
torDesc: "Darmowa, maksymalna prywatność IP, prowadzi ruch przez wiele relayów. Wolniejsza — mapy i niektóre relaye Nostr mogą zwalniać lub blokować węzły wyjściowe Tora. Świetna dla szczególnie ostrożnych.",
readThis: "Przeczytaj to, żeby się nie dać nabrać",
caveat1Before: "VPN/Tor ukrywa Twój",
ipWord: "IP",
caveat1: "— a nie spoty, które publikujesz. Pinezka w Twoim domu jest publiczna niezależnie od tego, czy używasz VPN.",
caveat2Before: "Nie włączaj",
nearMeGps: "„W pobliżu” / GPS przeglądarki",
caveat2: "jeśli zależy Ci na anonimowości — dokładny GPS niweczy każde ukrycie IP.",
caveat3: "Żadne narzędzie nie czyni Cię w pełni „anonimowym”. To tylko ogranicza to, co serwery mogą wywnioskować o Twojej lokalizacji sieciowej — i tyle.",
keysTitle: "Twoje klucze, Twoje konto",
keysBefore: "Twoje konto to para kluczy kryptograficznych, którą posiadasz. Najbezpieczniejszym sposobem logowania jest",
signer: "signer",
keysAfter: "(Alby, nos2x lub Amber na Androidzie), aby Twój klucz tajny nigdy nie został wklejony do aplikacji.",
keysCaveatBefore: "Jeśli wkleisz swój",
keysCaveatAfter: "bezpośrednio, zostanie zapisany w przeglądarce. Gdy możesz, użyj rozszerzenia signera i trzymaj kopię zapasową nsec w bezpiecznym miejscu offline.",
footerBefore: "Pytania? Zapytaj",
sasquatchName: "The Sasquatch",
footerMid: "w aplikacji lub przeczytaj",
gettingStarted: "przewodnik na start",
about: "O nas"
},
license: {
seoTitle: "Licencja — SkateSpots",
seoDescription: "Licencja SkateSpots. Możesz swobodnie jeździć na deskorolce.",
tagline: "Jeźdź, zarabiaj, baw się dobrze i wydawaj Sats, gdziekolwiek jesteś.",
copyright: "Współtwórcy SkateSpots i społeczność",
licenseLabel: "Licencja",
freeLine1: "MASZ WOLNOŚĆ",
freeLine2: "JEŹDZIĆ NA DESKOROLCE",
body: "Ten projekt jest otwarty. Udostępniaj go, rozwidlaj, buduj na nim, jeźdź. Ulice należą do wszystkich. Ten kod też. Jeźdź dalej, baw się dobrze, ucz się trików, wspieraj budowniczych i jeźdź znowu.",
builtBefore: "Zbudowane z ❤️ na",
builtMid: "· Napędzane przez",
lightning: "Bitcoin Lightning ⚡",
viewSource: "Zobacz źródło",
aboutSkateSpots: "O SkateSpots",
supporters: "Wspierający"
},
glossary: {
seoTitle: "Glosariusz trików · SkateSpots",
seoDescription: "Kompletny glosariusz skateboardingu — {{count}} haseł obejmujących flips, grinds, slides, grabs, airs, tricki na lipie, handplante, freestyle, terminy transition, stance i sprzęt, wraz z alternatywnymi nazwami.",
heading: "GLOSARIUSZ TRIKÓW",
subheading: "{{count}} haseł · tricki, transition, freestyle, stance i sprzęt",
searchPlaceholder: "Szukaj trików lub przezwisk — tre flip, crooks, method…",
clearSearch: "Wyczyść wyszukiwanie",
all: "Wszystkie",
results: "{{count}} wynik{{s}} dla",
noMatch: "Żaden trik nie pasuje. Spróbuj przezwiska takiego jak „tre flip”, „crooks” lub „melon”.",
tricksCount: "{{count}} trików",
footerBefore: "Znasz trik lub przezwisko, które przegapiliśmy? Triki dostają różne nazwy w każdej scenie — napisz do",
sasquatch: "The Sasquatch 🦧",
footerAfter: "i daj nam znać."
},
signers: {
seoTitle: "Aplikacje signera — zabezpiecz klucze Nostr | SkateSpots",
seoDescription: "Dowiedz się o aplikacjach signera, które chronią Twoje klucze Nostr. Znajdź najlepszą opcję na Androida, iOS lub przeglądarkę na komputerze.",
securityGuide: "Przewodnik po bezpieczeństwie",
protect: "Chroń swoje",
nostrKeys: "klucze Nostr",
heroDesc: "Aplikacje signera chronią Twoje klucze prywatne, podpisując wydarzenia bez ich ujawniania. Zamiast wklejać klucz do każdej aplikacji, pozwól signerowi zrobić to bezpiecznie.",
whySignerStrong: "Po co używać signera?",
whySigner: "Twój klucz prywatny Nostr jest jak hasło, którego nie można nigdy zmienić. Aplikacja signera chroni go, pozwalając korzystać z dowolnej aplikacji Nostr.",
androidTitle: "Signery na Androida",
androidDesc: "Natywne aplikacje signera na urządzenia z Androidem, w tym GrapheneOS.",
iosTitle: "Signery na iOS",
iosDesc: "Opcje signera dla użytkowników iPhone'a i iPada.",
browserTitle: "Rozszerzenia przeglądarki",
browserDesc: "Rozszerzenia do przeglądarek na komputerze do podpisywania w aplikacjach webowych.",
recommended: "Zalecane",
yourPlatform: "Twoja platforma",
get: "Pobierz {{name}}",
protocolsTitle: "Zrozumieć protokoły",
nip07Desc: "Standard rozszerzeń przeglądarki. Rozszerzenie wstrzykuje możliwości podpisywania do aplikacji webowych. Używany przez Alby, nos2x, Flamingo i podobne rozszerzenia.",
nip46Desc: "Protokół zdalnego podpisywania („bunker”). Twoja aplikacja signera zatwierdza żądania z innych aplikacji bez udostępniania kluczy. Używany przez Nsec.app, Nostria i Nowser.",
nip55Desc: "Protokół signera specyficzny dla Androida. Aplikacje natywne mogą prosić Amber o podpisy bez ujawniania kluczy. Najpłynniejsze doświadczenie na Androidzie.",
whichChoose: "Co wybrać?",
chooseAndroid: "Android:",
chooseAndroidDesc: "Amber (NIP-55) dla aplikacji natywnych",
chooseIos: "iOS:",
chooseIosDesc: "Nsec.app (NIP-46) dla najlepszej zgodności",
chooseDesktop: "Komputer:",
chooseDesktopDesc: "Alby, nos2x lub Flamingo (NIP-07)",
amberDesc: "Natywny signer na Androida skupiony na bezpieczeństwie i łatwości użycia. Najlepszy wybór dla użytkowników Androida.",
nsecAppDesc: "Wieloplatformowy zdalny signer działający jako bezpieczny sejf na Twoje klucze.",
nostriaDesc: "Aplikacja zdalnego signera z kluczami przechowywanymi w bezpiecznej pamięci urządzenia.",
nowserDesc: "Signer z wieloma metodami uwierzytelniania obsługujący zarówno rozszerzenia przeglądarki, jak i protokoły zdalnego podpisywania.",
nsecAppIosDesc: "Najlepsza opcja na iOS. Używaj go jako zdalnego signera z dowolnym klientem Nostr.",
nowserTfDesc: "Signer na iOS dostępny przez TestFlight z możliwościami podpisywania podobnymi do Androida.",
nostriaIosDesc: "Zdalny signer z bezpiecznym przechowywaniem kluczy na urządzeniu.",
nos2xDesc: "Proste i niezawodne rozszerzenie przeglądarki do podpisywania wydarzeń Nostr.",
albyDesc: "Portfel Bitcoin Lightning z wbudowanym zarządzaniem kluczami Nostr i WebLN.",
flamingoDesc: "Rozszerzenie przeglądarki skupione na Nostr z przejrzystym interfejsem.",
kiwiDesc: "Na Androidzie/GrapheneOS użyj przeglądarki Kiwi, aby załadować rozszerzenia nos2x lub Alby.",
fNativeApp: "Aplikacja natywna",
fMultiKey: "Obsługa wielu kluczy",
fEventSigning: "Podpisywanie wydarzeń",
fSecureStorage: "Bezpieczne przechowywanie kluczy",
fRemoteSigning: "Zdalne podpisywanie",
fAnyClient: "Działa z dowolnym klientem",
fCrossDevice: "Synchronizacja między urządzeniami",
fMultiKeySupport: "Obsługa wielu kluczy",
fNip07: "Obsługa NIP-07",
fNip46: "Obsługa NIP-46",
fFlexibleSigning: "Elastyczne podpisywanie",
fNativeIos: "Natywna aplikacja na iOS",
fLightweight: "Lekki",
fEasyToUse: "Łatwy w użyciu",
fChromeSupport: "Obsługa Chrome/Brave/Edge",
fLightningPayments: "Płatności Lightning",
fNostrSigning: "Podpisywanie Nostr",
fWebln: "Obsługa WebLN",
fNwc: "Obsługa NWC",
fCleanUi: "Przejrzysty interfejs",
fPrivacyFocused: "Nastawiony na prywatność",
fExtensionMobile: "Obsługa rozszerzeń na telefonie",
fFullBrowser: "Pełne doświadczenie przeglądarki",
fGraphene: "Działa na GrapheneOS"
},
betaDisclaimer: {
title: "Uwaga — to wersja beta",
subtitle: "Kilka słów, zanim wskoczysz.",
ossTitle: "Open source i eksperymentalne",
ossBody: "Tworzone otwarcie przez społeczność. Grzeb w nim, rozwidlaj, psuj.",
betaTitle: "W wersji beta — bez audytu",
betaBody: "Kod nie przeszedł jeszcze formalnego audytu bezpieczeństwa. Błędy się zdarzają.",
moneyTitle: "Obsługuje prawdziwego Bitcoina i Lightning",
moneyBody: "Używaj na nim pieniędzy na własne ryzyko. Ładuj tylko tyle, ile możesz stracić.",
finePrint: "Bez jakiejkolwiek gwarancji. Odpowiadasz wyłącznie za własne środki i klucze.",
viewCode: "Zobacz kod",
accept: "Rozumiem, wpuszczaj mnie"
}
},
};
export default plBatch3;