Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop

This commit is contained in:
Freeplay 2023-06-10 19:35:02 -04:00
commit 1276025e1d
6 changed files with 294 additions and 258 deletions

View file

@ -153,7 +153,7 @@ In Calckey's directory, fill out the `db` section of `.config/default.yml` with
### 🦔 Sonic
Sonic is better suited for self hosters with smaller deployments. It's easier to use, uses almost no resources, and takes barely any any disk space.
Sonic is better suited for self hosters with smaller deployments. It uses almost no resources, barely any any disk space, and is relatively fast.
Follow sonic's [installation guide](https://github.com/valeriansaliou/sonic#installation)
@ -247,4 +247,4 @@ pm2 start "NODE_ENV=production pnpm run start" --name Calckey
- Go back to Overview > click the clipboard icon next to the ID
- Run `psql -d calckey` (or whatever the database name is)
- Run `UPDATE "user" SET "isAdmin" = true WHERE id='999999';` (replace `999999` with the copied ID)
- Have the new admin log out and log back in
- Restart your Calckey server

View file

@ -2091,3 +2091,8 @@ listsDesc: Les llistes et permeten crear línies de temps amb usuaris específic
clipsDesc: Els clips són com marcadors categoritzats que es poden compartir. Podeu
crear clips des del menú de publicacions individuals.
selectChannel: Selecciona un canal
isLocked: Aquest compte té les següents aprovacions
isPatron: Mecenes de Calkey
isBot: Aquest compte és un bot
isModerator: Moderador
isAdmin: Administrador

View file

@ -1,8 +1,8 @@
_lang_: "Polski"
headlineMisskey: "Otwartoźródłowa, zdecentralizowana sieć społecznościowa, która zawsze\
\ będzie darmowa! \U0001F680"
introMisskey: "Hej! Calckey to otwartoźródłowa oraz zdecentralizowana sieć społecznościowa,\
\ która zawsze będzie darmowa! \U0001F680"
headlineMisskey: "Otwartoźródłowa, zdecentralizowana sieć społecznościowa, która zawsze
będzie darmowa! 🚀"
introMisskey: "Hej! Calckey to otwartoźródłowa oraz zdecentralizowana sieć społecznościowa,
która zawsze będzie darmowa! 🚀"
monthAndDay: "{month}-{day}"
search: "Szukaj"
notifications: "Powiadomienia"
@ -17,7 +17,7 @@ enterUsername: "Wprowadź nazwę użytkownika"
renotedBy: "Podbito przez {user}"
noNotes: "Brak wpisów"
noNotifications: "Brak powiadomień"
instance: "Instancja"
instance: "Serwer"
settings: "Ustawienia"
basicSettings: "Podstawowe ustawienia"
otherSettings: "Pozostałe ustawienia"
@ -45,8 +45,8 @@ copyContent: "Skopiuj zawartość"
copyLink: "Skopiuj odnośnik"
delete: "Usuń"
deleteAndEdit: "Usuń i edytuj"
deleteAndEditConfirm: "Czy na pewno chcesz usunąć ten wpis i zedytować go? Utracisz\
\ wszystkie reakcje, podbicia i odpowiedzi do tego wpisu."
deleteAndEditConfirm: "Czy na pewno chcesz usunąć ten wpis i zedytować go? Utracisz
wszystkie reakcje, podbicia i odpowiedzi do tego wpisu."
addToList: "Dodaj do listy"
sendMessage: "Wyślij wiadomość"
copyUsername: "Kopiuj nazwę użytkownika"
@ -66,11 +66,11 @@ import: "Importuj"
export: "Eksportuj"
files: "Pliki"
download: "Pobierz"
driveFileDeleteConfirm: "Czy chcesz usunąć plik \"{name}\"? Wszystkie wpisy zawierające\
\ ten plik również zostaną usunięte."
driveFileDeleteConfirm: "Czy chcesz usunąć plik \"{name}\"? Wszystkie wpisy zawierające
ten plik również zostaną usunięte."
unfollowConfirm: "Czy na pewno chcesz przestać obserwować {name}?"
exportRequested: "Zażądałeś eksportu. Może to zająć chwilę. Po zakończeniu eksportu\
\ zostanie on dodany do Twojego dysku."
exportRequested: "Zażądałeś eksportu. Może to zająć chwilę. Po zakończeniu eksportu
zostanie on dodany do Twojego dysku."
importRequested: "Zażądano importu. Może to zająć chwilę."
lists: "Listy"
noLists: "Nie masz żadnych list"
@ -85,8 +85,8 @@ error: "Błąd"
somethingHappened: "Coś poszło nie tak"
retry: "Spróbuj ponownie"
pageLoadError: "Nie udało się załadować strony."
pageLoadErrorDescription: "Zwykle jest to spowodowane problemem z siecią lub cache\
\ przeglądarki. Spróbuj wyczyścić cache i sprawdź jeszcze raz za chwilę."
pageLoadErrorDescription: "Zwykle jest to spowodowane problemem z siecią lub cache
przeglądarki. Spróbuj wyczyścić cache i sprawdź jeszcze raz za chwilę."
serverIsDead: "Serwer nie odpowiada. Zaczekaj chwilę i spróbuj ponownie."
youShouldUpgradeClient: "Aby zobaczyć tą stronę, odśwież ją, by zaaktualizować klienta."
enterListName: "Wpisz nazwę listy"
@ -113,8 +113,8 @@ sensitive: "NSFW"
add: "Dodaj"
reaction: "Reakcja"
reactionSetting: "Reakcje do pokazania w wyborniku reakcji"
reactionSettingDescription2: "Przeciągnij aby zmienić kolejność, naciśnij aby usunąć,\
\ naciśnij „+” aby dodać."
reactionSettingDescription2: "Przeciągnij aby zmienić kolejność, naciśnij aby usunąć,
naciśnij „+” aby dodać."
rememberNoteVisibility: "Zapamiętuj ustawienia widoczności wpisu"
attachCancel: "Usuń załącznik"
markAsSensitive: "Oznacz jako NSFW"
@ -143,22 +143,22 @@ emojiUrl: "Adres URL emoji"
addEmoji: "Dodaj emoji"
settingGuide: "Proponowana konfiguracja"
cacheRemoteFiles: "Przechowuj zdalne pliki w pamięci podręcznej"
cacheRemoteFilesDescription: "Gdy ta opcja jest wyłączona, zdalne pliki są ładowane\
\ bezpośrednio ze zdalnych instancji. Wyłączenie the opcji zmniejszy użycie powierzchni\
\ dyskowej, ale zwiększy transfer, ponieważ miniaturki nie będą generowane."
cacheRemoteFilesDescription: "Gdy ta opcja jest wyłączona, zdalne pliki są ładowane
bezpośrednio ze zdalnego serwera. Wyłączenie tej opcji zmniejszy użycie powierzchni
dyskowej, ale zwiększy transfer, ponieważ miniaturki nie będą generowane."
flagAsBot: "To konto jest botem"
flagAsBotDescription: "Jeżeli ten kanał jest kontrolowany przez jakiś program, ustaw\
\ tę opcję. Jeżeli włączona, będzie działać jako flaga informująca innych programistów,\
\ aby zapobiegać nieskończonej interakcji z różnymi botami i dostosowywać wewnętrzne\
\ systemy Calckey, traktując konto jako bota."
flagAsCat: "Czy jesteś kotem? \U0001F63A"
flagAsBotDescription: "Jeżeli ten kanał jest kontrolowany przez jakiś program, ustaw
tę opcję. Jeżeli włączona, będzie działać jako flaga informująca innych programistów,
aby zapobiegać nieskończonej interakcji z różnymi botami i dostosowywać wewnętrzne
systemy Calckey, traktując konto jako bota."
flagAsCat: "Czy jesteś kotem? 😺"
flagAsCatDescription: "Dostaniesz kocie uszka, oraz będziesz mówić jak kot!"
flagShowTimelineReplies: "Pokazuj odpowiedzi na osi czasu"
autoAcceptFollowed: "Automatycznie przyjmuj prośby o możliwość obserwacji od użytkowników,\
\ których obserwujesz"
autoAcceptFollowed: "Automatycznie przyjmuj prośby o możliwość obserwacji od użytkowników,
których obserwujesz"
addAccount: "Dodaj konto"
loginFailed: "Nie udało się zalogować"
showOnRemote: "Zobacz na zdalnej instancji"
showOnRemote: "Zobacz na zdalnym serwerze"
general: "Ogólne"
wallpaper: "Tapeta"
setWallpaper: "Ustaw tapetę"
@ -172,7 +172,7 @@ selectUser: "Wybierz użytkownika"
recipient: "Odbiorca(-y)"
annotation: "Komentarze"
federation: "Federacja"
instances: "Instancja"
instances: "Serwery"
registeredAt: "Zarejestrowano"
latestRequestSentAt: "Ostatnie żądanie wysłano o"
latestRequestReceivedAt: "Ostatnie żądanie otrzymano o"
@ -182,7 +182,7 @@ charts: "Wykresy"
perHour: "co godzinę"
perDay: "co dzień"
stopActivityDelivery: "Przestań przesyłać aktywności"
blockThisInstance: "Zablokuj tę instancję"
blockThisInstance: "Zablokuj ten serwer"
operations: "Działania"
software: "Oprogramowanie"
version: "Wersja"
@ -192,18 +192,18 @@ jobQueue: "Kolejka zadań"
cpuAndMemory: "CPU i pamięć"
network: "Sieć"
disk: "Dysk"
instanceInfo: "Informacje o instancji"
instanceInfo: "Informacje o serwerze"
statistics: "Statystyki"
clearQueue: "Wyczyść kolejkę"
clearQueueConfirmTitle: "Czy na pewno chcesz wyczyścić kolejkę?"
clearQueueConfirmText: "Wszystkie niewysłane wpisy z kolejki nie zostaną wysłane.\
\ Zwykle to nie jest konieczne."
clearQueueConfirmText: "Wszystkie niewysłane wpisy z kolejki nie zostaną wysłane.
Zwykle to nie jest konieczne."
clearCachedFiles: "Wyczyść pamięć podręczną"
clearCachedFilesConfirm: "Czy na pewno chcesz usunąć wszystkie zdalne pliki z pamięci\
\ podręcznej?"
blockedInstances: "Zablokowane instancje"
blockedInstancesDescription: "Wypisz nazwy hostów instancji, które powinny zostać\
\ zablokowane. Wypisane instancje nie będą mogły dłużej komunikować się z tą instancją."
clearCachedFilesConfirm: "Czy na pewno chcesz usunąć wszystkie zdalne pliki z pamięci
podręcznej?"
blockedInstances: "Zablokowane serwery"
blockedInstancesDescription: "Wypisz nazwy hostów serwerów, które chcesz zablokować.
Wymienione serwery nie będą mogły dłużej komunikować się z tym serwerem."
muteAndBlock: "Wyciszenia i blokady"
mutedUsers: "Wyciszeni użytkownicy"
blockedUsers: "Zablokowani użytkownicy"
@ -213,7 +213,7 @@ noteDeleteConfirm: "Czy na pewno chcesz usunąć ten wpis?"
pinLimitExceeded: "Nie możesz przypiąć więcej wpisów"
intro: "Zakończono instalację Calckey! Utwórz konto administratora."
done: "Gotowe"
processing: "Przetwarzanie..."
processing: "Przetwarzanie"
preview: "Podgląd"
default: "Domyślne"
defaultValueIs: "Domyślne: {value}"
@ -226,9 +226,9 @@ all: "Wszystkie"
subscribing: "Subskrybowanie"
publishing: "Publikowanie"
notResponding: "Nie odpowiada"
instanceFollowing: "Obserwowani na instancji"
instanceFollowers: "Obserwujący na instancji"
instanceUsers: "Użytkownicy tej instancji"
instanceFollowing: "Obserwowani na serwerze"
instanceFollowers: "Obserwujący na serwerze"
instanceUsers: "Użytkownicy tego serwera"
changePassword: "Zmień hasło"
security: "Bezpieczeństwo"
retypedNotMatch: "Wejście nie zgadza się."
@ -267,8 +267,8 @@ agreeTo: "Wyrażam zgodę na {0}"
tos: "Regulamin"
start: "Rozpocznij"
home: "Strona główna"
remoteUserCaution: "Te informacje mogą nie być aktualne, ponieważ użytkownik pochodzi\
\ ze zdalnej instancji."
remoteUserCaution: "Te informacje mogą nie być aktualne, ponieważ użytkownik pochodzi
ze zdalnej instancji."
activity: "Aktywność"
images: "Zdjęcia"
birthday: "Data urodzenia"
@ -301,8 +301,8 @@ unableToDelete: "Nie można usunąć"
inputNewFileName: "Wprowadź nową nazwę pliku"
inputNewDescription: "Proszę wpisać nowy napis"
inputNewFolderName: "Wprowadź nową nazwę katalogu"
circularReferenceFolder: "Katalog docelowy jest podkatalogiem katalogu, który chcesz\
\ przenieść."
circularReferenceFolder: "Katalog docelowy jest podkatalogiem katalogu, który chcesz
przenieść."
hasChildFilesOrFolders: "Ponieważ ten katalog nie jest pusty, nie może być usunięty."
copyUrl: "Skopiuj adres URL"
rename: "Zmień nazwę"
@ -319,8 +319,8 @@ unwatch: "Przestań śledzić"
accept: "Akceptuj"
reject: "Odrzuć"
normal: "Normalny"
instanceName: "Nazwa instancji"
instanceDescription: "Opis instancji"
instanceName: "Nazwa serwera"
instanceDescription: "Opis serwera"
maintainerName: "Administrator"
maintainerEmail: "E-mail administratora"
tosUrl: "Adres URL regulaminu"
@ -336,8 +336,8 @@ connectService: "Połącz"
disconnectService: "Rozłącz"
enableLocalTimeline: "Włącz lokalną oś czasu"
enableGlobalTimeline: "Włącz globalną oś czasu"
disablingTimelinesInfo: "Administratorzy i moderatorzy będą zawsze mieć dostęp do\
\ wszystkich osi czasu, nawet gdy są one wyłączone."
disablingTimelinesInfo: "Administratorzy i moderatorzy będą zawsze mieć dostęp do
wszystkich osi czasu, nawet gdy są one wyłączone."
registration: "Zarejestruj się"
enableRegistration: "Włącz rejestrację nowych użytkowników"
invite: "Zaproś"
@ -349,11 +349,11 @@ bannerUrl: "Adres URL banera"
backgroundImageUrl: "Adres URL tła"
basicInfo: "Podstawowe informacje"
pinnedUsers: "Przypięty użytkownik"
pinnedUsersDescription: "Wypisz po jednej nazwie użytkownika w wierszu. Podani użytkownicy\
\ zostaną przypięci pod kartą „Eksploruj”."
pinnedUsersDescription: "Wypisz po jednej nazwie użytkownika w wierszu. Podani użytkownicy
zostaną przypięci pod kartą „Eksploruj”."
pinnedPages: "Przypięte strony"
pinnedPagesDescription: "Wprowadź ścieżki stron które chcesz przypiąć na głównej stronie\
\ instancji, oddzielone znakiem nowego wiersza."
pinnedPagesDescription: "Wprowadź ścieżki stron, które chcesz przypiąć do górnej strony
tego serwera, oddzielając je znakami końca wiersza."
pinnedClipId: "ID przypiętego klipu"
pinnedNotes: "Przypięty wpis"
hcaptcha: "hCaptcha"
@ -364,16 +364,16 @@ recaptcha: "reCAPTCHA"
enableRecaptcha: "Włącz reCAPTCHA"
recaptchaSiteKey: "Klucz strony"
recaptchaSecretKey: "Tajny klucz"
avoidMultiCaptchaConfirm: "Używanie wielu Captchy może spowodować zakłócenia. Czy\
\ chcesz wyłączyć inną Captchę? Możesz zostawić wiele jednocześnie, klikając Anuluj."
avoidMultiCaptchaConfirm: "Używanie wielu Captchy może spowodować zakłócenia. Czy
chcesz wyłączyć inną Captchę? Możesz zostawić wiele jednocześnie, klikając Anuluj."
antennas: "Anteny"
manageAntennas: "Zarządzaj antenami"
name: "Nazwa"
antennaSource: "Źródło anteny"
antennaKeywords: "Słowa kluczowe do obserwacji"
antennaExcludeKeywords: "Wykluczone słowa kluczowe"
antennaKeywordsDescription: "Oddziel spacjami dla warunku AND, albo wymuś koniec linii\
\ dla warunku OR."
antennaKeywordsDescription: "Oddziel spacjami dla warunku AND, albo wymuś koniec linii
dla warunku OR."
notifyAntenna: "Powiadamiaj o nowych wpisach"
withFileAntenna: "Filtruj tylko wpisy z załączonym plikiem"
enableServiceworker: "Włącz powiadomienia push dla twojej przeglądarki"
@ -461,8 +461,8 @@ strongPassword: "Silne hasło"
passwordMatched: "Pasuje"
passwordNotMatched: "Hasła nie pasują do siebie"
signinWith: "Zaloguj się z {x}"
signinFailed: "Nie udało się zalogować. Wprowadzona nazwa użytkownika lub hasło są\
\ nieprawidłowe."
signinFailed: "Nie udało się zalogować. Wprowadzona nazwa użytkownika lub hasło są
nieprawidłowe."
tapSecurityKey: "Wybierz swój klucz bezpieczeństwa"
or: "Lub"
language: "Język"
@ -508,18 +508,18 @@ objectStorageBucketDesc: "Podaj nazwę „wiadra” używaną przez konfigurowan
objectStoragePrefix: "Prefiks"
objectStoragePrefixDesc: "Pliki będą przechowywane w katalogu z tym prefiksem."
objectStorageEndpoint: "Punkt końcowy"
objectStorageEndpointDesc: "Pozostaw puste jeżeli używasz AWS S3, w innym wypadku\
\ określ punkt końcowy jako '<host>' lub '<host>:<port>' zgodnie z instrukcjami\
\ usługi, której używasz."
objectStorageEndpointDesc: "Pozostaw puste jeżeli używasz AWS S3, w innym wypadku
określ punkt końcowy jako '<host>' lub '<host>:<port>' zgodnie z instrukcjami usługi,
której używasz."
objectStorageRegion: "Region"
objectStorageRegionDesc: "Określ region, np. 'xx-east-1'. Jeżeli usługa której używasz\
\ nie zawiera rozróżnienia regionów, pozostaw to pustym lub wprowadź 'us-east-1'."
objectStorageRegionDesc: "Określ region, np. 'xx-east-1'. Jeżeli usługa której używasz
nie zawiera rozróżnienia regionów, pozostaw to pustym lub wprowadź 'us-east-1'."
objectStorageUseSSL: "Użyj SSL"
objectStorageUseSSLDesc: "Wyłącz, jeżeli nie zamierzasz używać HTTPS dla połączenia\
\ z API"
objectStorageUseSSLDesc: "Wyłącz, jeżeli nie zamierzasz używać HTTPS dla połączenia
z API"
objectStorageUseProxy: "Połącz przez proxy"
objectStorageUseProxyDesc: "Wyłącz, jeżeli nie zamierzasz używać proxy dla połączenia\
\ z pamięcią blokową"
objectStorageUseProxyDesc: "Wyłącz, jeżeli nie zamierzasz używać proxy dla połączenia
z pamięcią blokową"
serverLogs: "Dziennik zdarzeń"
deleteAll: "Usuń wszystkie"
showFixedPostForm: "Wyświetlaj formularz tworzenia wpisu w górnej części osi czasu"
@ -546,22 +546,22 @@ sort: "Sortuj"
ascendingOrder: "Rosnąco"
descendingOrder: "Malejąco"
scratchpad: "Brudnopis"
scratchpadDescription: "Brudnopis to środowisko dla eksperymentów z AiScript. Możesz\
\ pisać, wykonywać i sprawdzać wyniki interakcji skryptu z Calckey."
scratchpadDescription: "Brudnopis to środowisko dla eksperymentów z AiScript. Możesz
pisać, wykonywać i sprawdzać wyniki interakcji skryptu z Calckey."
output: "Wyjście"
script: "Skrypt"
disablePagesScript: "Wyłącz AiScript na Stronach"
updateRemoteUser: "Aktualizuj zdalne dane o użytkowniku"
deleteAllFiles: "Usuń wszystkie pliki"
deleteAllFilesConfirm: "Czy na pewno chcesz usunąć wszystkie pliki?"
removeAllFollowingDescription: "Przestań obserwować wszystkie konta z {host}. Wykonaj\
\ to, jeżeli instancja już nie istnieje."
removeAllFollowingDescription: "Wykonanie tego polecenia spowoduje usunięcie wszystkich
kont z {host}. Zrób to, jeśli serwer np. już nie istnieje."
userSuspended: "To konto zostało zawieszone."
userSilenced: "Ten użytkownik został wyciszony."
yourAccountSuspendedTitle: "To konto jest zawieszone"
yourAccountSuspendedDescription: "To konto zostało zawieszone z powodu złamania regulaminu\
\ serwera lub innych podobnych. Skontaktuj się z administratorem, jeśli chciałbyś\
\ poznać bardziej szczegółowy powód. Proszę nie zakładać nowego konta."
yourAccountSuspendedDescription: "To konto zostało zawieszone z powodu złamania regulaminu
serwera lub innych podobnych. Skontaktuj się z administratorem, jeśli chciałbyś
poznać bardziej szczegółowy powód. Proszę nie zakładać nowego konta."
menu: "Menu"
divider: "Rozdzielacz"
addItem: "Dodaj element"
@ -600,14 +600,14 @@ permission: "Uprawnienia"
enableAll: "Włącz wszystko"
disableAll: "Wyłącz wszystko"
tokenRequested: "Przydziel dostęp do konta"
pluginTokenRequestedDescription: "Ta wtyczka będzie mogła korzystać z ustawionych\
\ tu uprawnień."
pluginTokenRequestedDescription: "Ta wtyczka będzie mogła korzystać z ustawionych
tu uprawnień."
notificationType: "Rodzaj powiadomień"
edit: "Edytuj"
emailServer: "Serwer poczty e-mail"
enableEmail: "Włącz dostarczanie wiadomości e-mail"
emailConfigInfo: "Wykorzystywany do potwierdzenia adresu e-mail w trakcie rejestracji,\
\ lub gdy zapomnisz hasła"
emailConfigInfo: "Wykorzystywany do potwierdzenia adresu e-mail w trakcie rejestracji,
lub gdy zapomnisz hasła"
email: "Adres e-mail"
emailAddress: "Adres e-mail"
smtpConfig: "Konfiguracja serwera SMTP"
@ -615,12 +615,12 @@ smtpHost: "Host"
smtpPort: "Port"
smtpUser: "Nazwa użytkownika"
smtpPass: "Hasło"
emptyToDisableSmtpAuth: "Pozostaw adres e-mail i hasło puste, aby wyłączyć weryfikację\
\ SMTP"
emptyToDisableSmtpAuth: "Pozostaw adres e-mail i hasło puste, aby wyłączyć weryfikację
SMTP"
smtpSecureInfo: "Wyłącz, jeżeli używasz STARTTLS"
testEmail: "Przetestuj dostarczanie wiadomości e-mail"
wordMute: "Wyciszenie słowa"
instanceMute: "Wyciszone instancje"
instanceMute: "Wyciszenie serwera"
userSaysSomething: "{name} powiedział* coś"
makeActive: "Aktywuj"
display: "Wyświetlanie"
@ -635,12 +635,12 @@ create: "Utwórz"
notificationSetting: "Ustawienia powiadomień"
notificationSettingDesc: "Wybierz rodzaj powiadomień do wyświetlania."
useGlobalSetting: "Użyj globalnych ustawień"
useGlobalSettingDesc: "Jeżeli włączone, zostaną wykorzystane ustawienia powiadomień\
\ Twojego konta. Jeżeli wyłączone, mogą zostać wykonane oddzielne konfiguracje."
useGlobalSettingDesc: "Jeżeli włączone, zostaną wykorzystane ustawienia powiadomień
Twojego konta. Jeżeli wyłączone, mogą zostać wykonane oddzielne konfiguracje."
other: "Inne"
regenerateLoginToken: "Generuj token logowania ponownie"
regenerateLoginTokenDescription: "Regeneruje token używany wewnętrznie podczas logowania.\
\ Zazwyczaj nie jest to konieczne. Po regeneracji wszystkie urządzenia zostaną wylogowane."
regenerateLoginTokenDescription: "Regeneruje token używany wewnętrznie podczas logowania.
Zazwyczaj nie jest to konieczne. Po regeneracji wszystkie urządzenia zostaną wylogowane."
setMultipleBySeparatingWithSpace: "Możesz ustawić wiele, oddzielając je spacjami."
fileIdOrUrl: "ID pliku albo URL"
behavior: "Zachowanie"
@ -648,19 +648,19 @@ sample: "Przykład"
abuseReports: "Zgłoszenia"
reportAbuse: "Zgłoś"
reportAbuseOf: "Zgłoś {name}"
fillAbuseReportDescription: "Wypełnij szczegóły zgłoszenia. Jeżeli dotyczy ono określonego\
\ wpisu, uwzględnij jego adres URL."
fillAbuseReportDescription: "Wypełnij szczegóły zgłoszenia. Jeżeli dotyczy ono określonego
wpisu, uwzględnij jego adres URL."
abuseReported: "Twoje zgłoszenie zostało wysłane. Dziękujemy."
reporteeOrigin: "Pochodzenie osoby zgłoszonej"
reporterOrigin: "Pochodzenie osoby zgłaszającej"
forwardReport: "Przekaż zgłoszenie do innej instancji"
forwardReport: "Przekaż zgłoszenie do zdalnego serwera"
send: "Wyślij"
abuseMarkAsResolved: "Oznacz zgłoszenie jako rozwiązane"
openInNewTab: "Otwórz w nowej karcie"
openInSideView: "Otwórz w bocznym widoku"
defaultNavigationBehaviour: "Domyślne zachowanie nawigacji"
editTheseSettingsMayBreakAccount: "Edycja tych ustawień może uszkodzić Twoje konto."
instanceTicker: "Informacje o wpisach instancji"
instanceTicker: "Informacje o wpisach serwera"
waitingFor: "Oczekiwanie na {x}"
random: "Losowe"
system: "System"
@ -671,11 +671,11 @@ createNew: "Utwórz nowy"
optional: "Nieobowiązkowe"
createNewClip: "Utwórz nowy klip"
unclip: "Odczep"
confirmToUnclipAlreadyClippedNote: "Ten wpis jest już częścią klipu \"{name}\". Czy\
\ chcesz ją usunąć z tego klipu?"
confirmToUnclipAlreadyClippedNote: "Ten wpis jest już częścią klipu \"{name}\". Czy
chcesz ją usunąć z tego klipu?"
public: "Publiczny"
i18nInfo: "Calckey jest tłumaczone na wiele języków przez wolontariuszy. Możesz pomóc\
\ na {link}."
i18nInfo: "Calckey jest tłumaczone na wiele języków przez wolontariuszy. Możesz pomóc
na {link}."
manageAccessTokens: "Zarządzaj tokenami dostępu"
accountInfo: "Informacje o koncie"
notesCount: "Liczba wpisów"
@ -694,16 +694,15 @@ no: "Nie"
driveFilesCount: "Liczba plików na dysku"
driveUsage: "Użycie przestrzeni dyskowej"
noCrawle: "Odrzuć indeksowanie przez crawlery"
noCrawleDescription: "Proś wyszukiwarki internetowe, aby nie indeksowały Twojego profilu,\
\ wpisów, stron itd."
lockedAccountInfo: "Dopóki nie ustawisz widoczności wpisu na \"Obserwujący\", twoje\
\ wpisy będą mogli widzieć wszyscy, nawet jeśli ustawisz manualne zatwierdzanie\
\ obserwujących."
noCrawleDescription: "Proś wyszukiwarki internetowe, aby nie indeksowały Twojego profilu,
wpisów, stron itd."
lockedAccountInfo: "Dopóki nie ustawisz widoczności wpisu na \"Obserwujący\", twoje
wpisy będą mogli widzieć wszyscy, nawet jeśli ustawisz manualne zatwierdzanie obserwujących."
alwaysMarkSensitive: "Oznacz domyślnie jako NSFW"
loadRawImages: "Wyświetlaj zdjęcia w załącznikach w całości zamiast miniatur"
disableShowingAnimatedImages: "Nie odtwarzaj animowanych obrazów"
verificationEmailSent: "Wiadomość weryfikacyjna została wysłana. Odwiedź uwzględniony\
\ odnośnik, aby ukończyć weryfikację."
verificationEmailSent: "Wiadomość weryfikacyjna została wysłana. Odwiedź uwzględniony
odnośnik, aby ukończyć weryfikację."
notSet: "Nie ustawiono"
emailVerified: "Adres e-mail został potwierdzony"
noteFavoritesCount: "Liczba zakładek"
@ -715,16 +714,16 @@ clips: "Klipy"
experimentalFeatures: "Eksperymentalne funkcje"
developer: "Programista"
makeExplorable: "Pokazuj konto na stronie „Eksploruj”"
makeExplorableDescription: "Jeżeli wyłączysz tę opcję, Twoje konto nie będzie wyświetlać\
\ się w sekcji „Eksploruj”."
makeExplorableDescription: "Jeżeli wyłączysz tę opcję, Twoje konto nie będzie wyświetlać
się w sekcji „Eksploruj”."
showGapBetweenNotesInTimeline: "Pokazuj odstęp między wpisami na osi czasu"
duplicate: "Duplikuj"
left: "Lewo"
center: "Wyśrodkuj"
wide: "Szerokie"
narrow: "Wąskie"
reloadToApplySetting: "To ustawienie zostanie zastosowane po odświeżeniu strony. Chcesz\
\ odświeżyć?"
reloadToApplySetting: "To ustawienie zostanie zastosowane po odświeżeniu strony. Chcesz
odświeżyć?"
needReloadToApply: "To ustawienie zostanie zastosowane po odświeżeniu strony."
showTitlebar: "Pokazuj pasek tytułowy"
clearCache: "Wyczyść pamięć podręczną"
@ -755,7 +754,7 @@ capacity: "Pojemność"
inUse: "Użyto"
editCode: "Edytuj kod"
apply: "Zastosuj"
receiveAnnouncementFromInstance: "Otrzymuj powiadomienia e-mail z tej instancji"
receiveAnnouncementFromInstance: "Otrzymuj powiadomienia e-mail z tego serwera"
emailNotification: "Powiadomienia e-mail"
publish: "Publikuj"
inChannelSearch: "Szukaj na kanale"
@ -772,21 +771,21 @@ quitFullView: "Opuść pełny widok"
addDescription: "Dodaj opis"
userPagePinTip: "Możesz wyświetlać wpisy w tym miejscu po wybraniu \"Przypnij do profilu\"\
\ z menu pojedynczego wpisu."
notSpecifiedMentionWarning: "Ten wpis zawiera wzmianki o użytkownikach niezawartych\
\ jako odbiorcy"
notSpecifiedMentionWarning: "Ten wpis zawiera wzmianki o użytkownikach niezawartych
jako odbiorcy"
info: "Informacje"
userInfo: "Informacje o użykowniku"
unknown: "Nieznane"
onlineStatus: "Status online"
hideOnlineStatus: "Ukryj status online"
hideOnlineStatusDescription: "Ukrywanie statusu online ogranicza wygody niektórych\
\ funkcji, takich jak wyszukiwanie."
hideOnlineStatusDescription: "Ukrywanie statusu online ogranicza wygody niektórych
funkcji, takich jak wyszukiwanie."
online: "Online"
active: "Aktywny"
offline: "Offline"
notRecommended: "Nie zalecane"
botProtection: "Zabezpieczenie przed botami"
instanceBlocking: "Zablokowane/wyciszone instancje"
instanceBlocking: "Zarządzanie federacją"
selectAccount: "Wybierz konto"
switchAccount: "Przełącz konto"
enabled: "Właczono"
@ -815,8 +814,8 @@ emailNotConfiguredWarning: "Nie podano adresu e-mail."
ratio: "Stosunek"
previewNoteText: "Pokaż podgląd"
customCss: "Własny CSS"
customCssWarn: "Używaj tego ustawienia tylko wtedy, gdy wiesz co ono robi. Nieprawidłowe\
\ wpisy mogą spowodować, że klient przestanie działać poprawnie."
customCssWarn: "Używaj tego ustawienia tylko wtedy, gdy wiesz co ono robi. Nieprawidłowe
wpisy mogą spowodować, że klient przestanie działać poprawnie."
global: "Globalna"
squareAvatars: "Wyświetlaj kwadratowe awatary"
sent: "Wysłane"
@ -832,8 +831,8 @@ translate: "Przetłumacz"
translatedFrom: "Przetłumaczone z {x}"
accountDeletionInProgress: "Trwa usuwanie konta"
usernameInfo: "Nazwa, która identyfikuje Twoje konto spośród innych na tym serwerze.\
\ Możesz użyć alfabetu (a~z, A~Z), cyfr (0~9) lub podkreślników (_). Nazwy użytkownika\
\ nie mogą być później zmieniane."
\ Możesz użyć alfabetu (a~z, A~Z), cyfr (0~9) lub podkreślników (_). Nazwy użytkownika
nie mogą być później zmieniane."
aiChanMode: "Ai-chan w klasycznym interfejsie"
keepCw: "Zostaw ostrzeżenia o zawartości"
pubSub: "Konta Pub/Sub"
@ -847,14 +846,14 @@ filter: "Filtr"
controlPanel: "Panel sterowania"
manageAccounts: "Zarządzaj kontami"
makeReactionsPublic: "Ustaw historię reakcji jako publiczną"
makeReactionsPublicDescription: "To spowoduje, że lista wszystkich Twoich dotychczasowych\
\ reakcji będzie publicznie widoczna."
classic: "Klasyczny"
makeReactionsPublicDescription: "To spowoduje, że lista wszystkich Twoich dotychczasowych
reakcji będzie publicznie widoczna."
classic: "Wyśrodkowany"
muteThread: "Wycisz wątek"
unmuteThread: "Wyłącz wyciszenie wątku"
ffVisibility: "Widoczność obserwowanych/obserwujących"
ffVisibilityDescription: "Pozwala skonfigurować, kto może zobaczyć, kogo obserwujesz\
\ i kto Cię obserwuje."
ffVisibilityDescription: "Pozwala skonfigurować, kto może zobaczyć, kogo obserwujesz
i kto Cię obserwuje."
continueThread: "Kontynuuj wątek"
deleteAccountConfirm: "Spowoduje to nieodwracalne usunięcie Twojego konta. Kontynuować?"
incorrectPassword: "Nieprawidłowe hasło."
@ -862,8 +861,8 @@ voteConfirm: "Potwierdzić swój głos na \"{choice}\"?"
hide: "Ukryj"
leaveGroup: "Opuść grupę"
leaveGroupConfirm: "Czy na pewno chcesz opuścić \"{name}\"?"
useDrawerReactionPickerForMobile: "Wyświetlaj wybornik reakcji jako szufladę na urządzeniach\
\ mobilnych"
useDrawerReactionPickerForMobile: "Wyświetlaj wybornik reakcji jako szufladę na urządzeniach
mobilnych"
welcomeBackWithName: "Witaj z powrotem, {name}"
clickToFinishEmailVerification: "Kliknij [{ok}], aby zakończyć weryfikację e-mail."
overridedDeviceKind: "Typ urządzenia"
@ -886,22 +885,22 @@ type: "Typ"
speed: "Prędkość"
localOnly: "Tylko lokalne"
failedToUpload: "Przesyłanie nie powiodło się"
cannotUploadBecauseInappropriate: "Nie można przesłać tego pliku, ponieważ jego części\
\ zostały wykryte jako potencjalnie nieodpowiednie."
cannotUploadBecauseNoFreeSpace: "Przesyłanie nie powiodło się z powodu braku miejsca\
\ na dysku."
cannotUploadBecauseInappropriate: "Nie można przesłać tego pliku, ponieważ jego części
zostały wykryte jako potencjalnie nieodpowiednie."
cannotUploadBecauseNoFreeSpace: "Przesyłanie nie powiodło się z powodu braku miejsca
na dysku."
beta: "Beta"
enableAutoSensitive: "Automatyczne oznaczanie NSFW"
enableAutoSensitiveDescription: "Umożliwia automatyczne wykrywanie i oznaczanie zawartości\
\ NSFW za pomocą uczenia maszynowego. Nawet jeśli ta opcja jest wyłączona, może\
\ być włączona na całej instancji."
enableAutoSensitiveDescription: "Umożliwia automatyczne wykrywanie i oznaczanie zawartości
NSFW za pomocą uczenia maszynowego tam, gdzie to możliwe. Nawet jeśli ta opcja jest
wyłączona, może być włączona na całym serwerze."
navbar: "Pasek nawigacyjny"
account: "Konta"
move: "Przenieś"
_sensitiveMediaDetection:
description: "Zmniejsza wysiłek związany z moderacją serwera dzięki automatycznemu\
\ rozpoznawaniu zawartości NSFW za pomocą uczenia maszynowego. To nieznacznie\
\ zwiększy obciążenie serwera."
description: "Zmniejsza wysiłek związany z moderacją serwera dzięki automatycznemu
rozpoznawaniu zawartości NSFW za pomocą uczenia maszynowego. To nieznacznie zwiększy
obciążenie serwera."
setSensitiveFlagAutomatically: "Oznacz jako NSFW"
sensitivity: Czułość wykrywania
analyzeVideosDescription: Analizuje filmy, w dodatku do zdjęć. Zwiększy to nieznacznie
@ -925,15 +924,15 @@ _ffVisibility:
_signup:
almostThere: "Prawie na miejscu"
emailAddressInfo: "Podaj swój adres e-mail. Nie zostanie on upubliczniony."
emailSent: "E-mail z potwierdzeniem został wysłany na Twój adres e-mail ({email}).\
\ Kliknij dołączony link, aby dokończyć tworzenie konta."
emailSent: "E-mail z potwierdzeniem został wysłany na Twój adres e-mail ({email}).
Kliknij dołączony link, aby dokończyć tworzenie konta."
_accountDelete:
accountDelete: "Usuń konto"
mayTakeTime: "Ponieważ usuwanie konta jest procesem wymagającym dużej ilości zasobów,\
\ jego ukończenie może zająć trochę czasu, w zależności od ilości utworzonej zawartości\
\ i liczby przesłanych plików."
sendEmail: "Po zakończeniu usuwania konta na adres e-mail zarejestrowany na tym\
\ koncie zostanie wysłana wiadomość e-mail."
mayTakeTime: "Ponieważ usuwanie konta jest procesem wymagającym dużej ilości zasobów,
jego ukończenie może zająć trochę czasu, w zależności od ilości utworzonej zawartości
i liczby przesłanych plików."
sendEmail: "Po zakończeniu usuwania konta na adres e-mail zarejestrowany na tym
koncie zostanie wysłana wiadomość e-mail."
requestAccountDelete: "Poproś o usunięcie konta"
started: "Usuwanie się rozpoczęło."
inProgress: "Usuwanie jest obecnie w toku"
@ -941,12 +940,12 @@ _ad:
back: "Wróć"
reduceFrequencyOfThisAd: "Pokazuj tę reklamę rzadziej"
_forgotPassword:
enterEmail: "Wpisz adres e-mail użyty do rejestracji. Zostanie do niego wysłany\
\ link, za pomocą którego możesz zresetować hasło."
ifNoEmail: "Jeżeli nie podano adresu e-mail podczas rejestracji, skontaktuj się\
\ z administratorem zamiast tego."
contactAdmin: "Jeżeli Twoja instancja nie obsługuje adresów e-mail, skontaktuj się\
\ zamiast tego z administratorem, aby zresetować hasło."
enterEmail: "Wpisz adres e-mail użyty do rejestracji. Zostanie do niego wysłany
link, za pomocą którego możesz zresetować hasło."
ifNoEmail: "Jeśli nie użyłeś adresu e-mail podczas rejestracji, skontaktuj się z
administratorem serwera."
contactAdmin: "Ten serwer nie obsługuje adresów e-mail, zamiast tego skontaktuj
się z administratorem serwera, aby zresetować hasło."
_gallery:
my: "Moja galeria"
liked: "Polubione wpisy"
@ -969,10 +968,10 @@ _preferencesBackups:
save: "Zapisz zmiany"
inputName: "Proszę podać nazwę dla tej kopii zapasowej"
cannotSave: "Zapisanie nie powiodło się"
nameAlreadyExists: "Kopia zapasowa o nazwie \"{name}\" już istnieje. Proszę podać\
\ inną nazwę."
applyConfirm: "Czy na pewno chcesz zastosować kopię zapasową \"{name}\" na tym urządzeniu?\
\ Istniejące ustawienia tego urządzenia zostaną nadpisane."
nameAlreadyExists: "Kopia zapasowa o nazwie \"{name}\" już istnieje. Proszę podać
inną nazwę."
applyConfirm: "Czy na pewno chcesz zastosować kopię zapasową \"{name}\" na tym urządzeniu?
Istniejące ustawienia tego urządzenia zostaną nadpisane."
saveConfirm: "Zapisać kopię zapasową jako {name}?"
deleteConfirm: "Usunąć kopię zapasową {name}?"
renameConfirm: "Zmienić nazwę kopii zapasowej z \"{old}\" na \"{new}\"?"
@ -989,15 +988,15 @@ _registry:
domain: "Domena"
createKey: "Utwórz klucz"
_aboutMisskey:
about: "Calckey jest forkiem Misskey utworzonym przez ThatOneCalculator, rozwijanym\
\ od 2022."
about: "Calckey jest forkiem Misskey utworzonym przez ThatOneCalculator, rozwijanym
od 2022."
contributors: "Główni twórcy"
allContributors: "Wszyscy twórcy"
source: "Kod źródłowy"
translation: "Tłumacz Calckey"
donate: "Przekaż darowiznę na Calckey"
morePatrons: "Naprawdę doceniam wsparcie ze strony wielu niewymienionych tu osób.\
\ Dziękuję! \U0001F970"
morePatrons: "Naprawdę doceniam wsparcie ze strony wielu niewymienionych tu osób.
Dziękuję! 🥰"
patrons: "Wspierający"
_nsfw:
respect: "Ukrywaj media NSFW"
@ -1005,13 +1004,13 @@ _nsfw:
force: "Ukrywaj wszystkie media"
_mfm:
cheatSheet: "Ściąga MFM"
intro: "MFM jest językiem składniowym używanym przez m.in. Calckey, forki *key (w\
\ tym Calckey), oraz Akkomę, który może być użyty w wielu miejscach. Tu znajdziesz\
\ listę wszystkich możliwych elementów składni MFM."
intro: "MFM jest językiem składniowym używanym przez m.in. Calckey, forki *key (w
tym Calckey), oraz Akkomę, który może być użyty w wielu miejscach. Tu znajdziesz
listę wszystkich możliwych elementów składni MFM."
dummy: "Calckey rozszerza świat Fediwersum"
mention: "Wspomnij"
mentionDescription: "Używając znaku @ i nazwy użytkownika, możesz określić danego\
\ użytkownika."
mentionDescription: "Używając znaku @ i nazwy użytkownika, możesz określić danego
użytkownika."
hashtag: "Hashtag"
hashtagDescription: "Używając kratki i tekstu, możesz określić hashtag."
url: "Adres URL"
@ -1026,14 +1025,14 @@ _mfm:
centerDescription: "Wyśrodkowuje zawartość."
inlineCode: "Kod (w wierszu)"
blockCode: "Kod (blok)"
blockCodeDescription: "Wyświetla kod z podświetlaną składnią składający się z wielu\
\ linii."
blockCodeDescription: "Wyświetla kod z podświetlaną składnią składający się z wielu
linii."
blockMath: "Matematyka (Blok)"
quote: "Cytuj"
quoteDescription: "Wyświetla treść jako cytat."
emoji: "Niestandardowe emoji"
emojiDescription: "Otaczając nazwę niestandardowego emoji dwukropkami, możesz użyć\
\ niestandardowego emoji."
emojiDescription: "Otaczając nazwę niestandardowego emoji dwukropkami, możesz użyć
niestandardowego emoji."
search: "Szukaj"
searchDescription: "Wyświetla pole wyszukiwania z wcześniej wpisanym tekstem."
flip: "Odwróć"
@ -1077,7 +1076,7 @@ _mfm:
background: Kolor tła
backgroundDescription: Zmień kolor tła tekstu.
foregroundDescription: Zmień kolor pierwszoplanowy tekstu.
positionDescription: Przesuń treść o określoną odległość.
positionDescription: Przesuń zawartość o określoną wartość.
position: Pozycjonuj
foreground: Kolor pierwszoplanowy
scaleDescription: Skaluj treść o określoną wielkość.
@ -1154,8 +1153,8 @@ _theme:
darken: "Ściemnij"
lighten: "Rozjaśnij"
inputConstantName: "Wprowadź nazwę stałej"
importInfo: "Jeżeli wprowadzisz tu kod motywu, możesz zaimportować go w edytorze\
\ motywu"
importInfo: "Jeżeli wprowadzisz tu kod motywu, możesz zaimportować go w edytorze
motywu"
deleteConstantConfirm: "Czy na pewno chcesz usunąć stałą {const}?"
keys:
accent: "Akcent"
@ -1229,42 +1228,42 @@ _tutorial:
step1_1: "Witamy!"
step1_2: "Pozwól, że Cię skonfigurujemy. Będziesz działać w mgnieniu oka!"
step2_1: "Najpierw, proszę wypełnij swój profil."
step2_2: "Podanie kilku informacji o tym, kim jesteś, ułatwi innym stwierdzenie,\
\ czy chcą zobaczyć Twoje wpisy lub śledzić Cię."
step2_2: "Podanie kilku informacji o tym, kim jesteś, ułatwi innym stwierdzenie,
czy chcą zobaczyć Twoje wpisy lub śledzić Cię."
step3_1: "Pora znaleźć osoby do śledzenia!"
step3_2: "Twoje domowe i społeczne linie czasu opierają się na tym, kogo śledzisz,\
\ więc spróbuj śledzić kilka kont, aby zacząć.\nKliknij kółko z plusem w prawym\
\ górnym rogu profilu, aby go śledzić."
step3_2: "Twoje domowe i społeczne linie czasu opierają się na tym, kogo śledzisz,
więc spróbuj śledzić kilka kont, aby zacząć.\nKliknij kółko z plusem w prawym
górnym rogu profilu, aby go śledzić."
step4_1: "Pozwól, że zabierzemy Cię tam."
step4_2: "W pierwszym wpisie możesz się przedstawić lub wysłać powitanie - \"Witaj,\
\ świecie!\""
step4_2: "W pierwszym wpisie możesz się przedstawić lub wysłać powitanie - \"Witaj,
świecie!\""
step5_1: "Osie czasu, wszędzie widzę osie czasu!"
step5_2: "Twoja instancja ma włączone {timelines} różne osie czasu."
step5_3: "Główna {icon} oś czasu to miejsce, w którym możesz zobaczyć posty od użytkowników\
\ których obserwujesz, oraz innych użytkowników z tej instancji. Jeśli wolisz,\
\ by główna oś czasu pokazywała tylko posty od użytkowników których obserwujesz,\
\ możesz łatwo to zmienić w ustawieniach!"
step5_4: "Lokalna {icon} oś czasu to miejsce, w którym możesz zobaczyć posty od\
\ wszystkich innych osób na tej instancji."
step5_5: "Społeczna {icon} oś czasu to miejsce, gdzie możesz zobaczyć posty z instancji,\
\ które admini polecają."
step5_6: "Polecana {icon} oś czasu to miejsce, gdzie możesz zobaczyć posty z instancji,\
\ które admini polecają."
step5_7: "Globalna {icon} oś czasu to miejsce, gdzie możesz zobaczyć posty z każdej\
\ innej połączonej instancji."
step5_3: "Główna {icon} oś czasu to miejsce, w którym możesz zobaczyć posty od użytkowników
których obserwujesz, oraz innych użytkowników z tej instancji. Jeśli wolisz, by
główna oś czasu pokazywała tylko posty od użytkowników których obserwujesz, możesz
łatwo to zmienić w ustawieniach!"
step5_4: "Lokalna {icon} oś czasu to miejsce, w którym możesz zobaczyć posty od
wszystkich innych osób na tej instancji."
step5_5: "Społeczna {icon} oś czasu to miejsce, gdzie możesz zobaczyć posty z instancji,
które admini polecają."
step5_6: "Polecana {icon} oś czasu to miejsce, gdzie możesz zobaczyć posty z instancji,
które admini polecają."
step5_7: "Globalna {icon} oś czasu to miejsce, gdzie możesz zobaczyć posty z każdej
innej połączonej instancji."
step6_1: "Więc, czym to jest to miejsce?"
step6_2: "Cóż, nie dołączył*ś po prostu do Calckey. Dołączył*ś do portalu do Fediverse,\
\ połączonej sieci tysięcy serwerów, zwanych instancjami."
step6_3: "Każdy serwer działa w inny sposób, i nie wszystkie serwery używają Calckey.\
\ Ten jednak używa! Jest to trochę skomplikowane, ale w krótkim czasie załapiesz\
\ o co chodzi."
step6_2: "Cóż, nie dołączył*ś po prostu do Calckey. Dołączył*ś do portalu do Fediverse,
połączonej sieci tysięcy serwerów, zwanych instancjami."
step6_3: "Każdy serwer działa w inny sposób, i nie wszystkie serwery używają Calckey.
Ten jednak używa! Jest to trochę skomplikowane, ale w krótkim czasie załapiesz
o co chodzi."
step6_4: "A teraz idź, odkrywaj i baw się dobrze!"
_2fa:
alreadyRegistered: "Zarejestrowałeś już urządzenie do uwierzytelniania dwuskładnikowego."
registerDevice: "Zarejestruj nowe urządzenie"
registerKey: "Zarejestruj klucz bezpieczeństwa"
step1: "Najpierw, zainstaluj aplikację uwierzytelniającą (taką jak {a} lub {b})\
\ na swoim urządzeniu."
step1: "Najpierw, zainstaluj aplikację uwierzytelniającą (taką jak {a} lub {b})
na swoim urządzeniu."
step2: "Następnie, zeskanuje kod QR z ekranu."
step3: "Wprowadź token podany w aplikacji, aby ukończyć konfigurację."
step4: "Od teraz, przy każdej próbie logowania otrzymasz prośbę o token logowania."
@ -1404,8 +1403,8 @@ _profile:
youCanIncludeHashtags: "Możesz umieścić hashtagi w swoim opisie."
metadata: "Dodatkowe informacje"
metadataEdit: "Edytuj dodatkowe informacje"
metadataDescription: "Możesz wyświetlać do czterech sekcji dodatkowych informacji\
\ na swoim profilu."
metadataDescription: "Możesz wyświetlać do czterech sekcji dodatkowych informacji
na swoim profilu."
metadataLabel: "Etykieta"
metadataContent: "Treść"
changeAvatar: "Zmień awatar"
@ -1815,12 +1814,12 @@ objectStorageSetPublicRead: Ustaw "public-read" podczas wysyłania
removeAllFollowing: Przestań obserwować wszystkich obserwowanych użytkowników
smtpSecure: Użyj implicit SSL/TLS dla połączeń SMTP
secureMode: Tryb bezpieczny (Authorized Fetch)
instanceSecurity: Bezpieczeństwo instancji
instanceSecurity: Bezpieczeństwo serwera
privateMode: Tryb prywatny
allowedInstances: Dopuszczone instancje
allowedInstances: Dopuszczone serwery
recommended: Polecane
allowedInstancesDescription: Hosty instancji które mają być dopuszczone do federacji,
każdy separowany nową linią (dotyczy tylko trybu prywatnego).
allowedInstancesDescription: Hosty serwerów, które mają być dopuszczone do federacji,
każdy oddzielony nowym wierszem (dotyczy tylko trybu prywatnego).
seperateRenoteQuote: Oddziel przyciski podbicia i cytowania
refreshInterval: 'Częstotliwość aktualizacji '
slow: Wolna
@ -1846,34 +1845,34 @@ moveToLabel: 'Konto na które się przenosisz:'
moveAccount: Przenieś konto!
moveAccountDescription: Ten proces jest nieodwracalny. Upewnij się, że utworzył*ś
alias dla tego konta na nowym koncie, przed rozpoczęciem. Proszę wpisz tag konta
w formacie @person@instance.com
w formacie @osoba@serwer.com
moveFrom: Przejdź ze starego konta na obecne
moveFromLabel: 'Konto które przenosisz:'
showUpdates: Pokaż pop-up po aktualizacji Calckey
swipeOnDesktop: Zezwól na przeciąganie w stylu mobilnym na desktopie
moveFromDescription: To utworzy alias twojego starego konta, w celu umożliwienia migracji
z tamtego konta na to. Zrób to ZANIM rozpoczniesz przenoszenie się z tamtego konta.
Proszę wpisz tag konta w formacie @person@instance.com
migrationConfirm: "Czy jesteś absolutnie pewn* tego, że chcesz przenieść swoje konto\
\ na {account}? Tego działania nie można odwrócić. Nieodwracalnie stracisz możliwość\
\ normalnego korzystania z konta.\nUpewnij się, że to konto zostało ustawione jako\
\ konto z którego się przenosisz."
Proszę wpisz tag konta w formacie @osoba@serwer.com
migrationConfirm: "Czy jesteś absolutnie pewn* tego, że chcesz przenieść swoje konto
na {account}? Tego działania nie można odwrócić. Nieodwracalnie stracisz możliwość
normalnego korzystania z konta.\nUpewnij się, że to konto zostało ustawione jako
konto z którego się przenosisz."
noThankYou: Nie, dziękuję
addInstance: Dodaj instancję
addInstance: Dodaj serwer
renoteMute: Wycisz podbicia
renoteUnmute: Odcisz podbicia
flagSpeakAsCat: Mów jak kot
flagSpeakAsCatDescription: Twoje posty zostaną znya-izowane, gdy w trybie kota
selectInstance: Wybierz instancję
noInstances: Brak instancji
selectInstance: Wybierz serwer
noInstances: Brak serwerów
keepOriginalUploadingDescription: Zapisuje oryginalne zdjęcie. Jeśli wyłączone, wersja
do wyświetlania w sieci zostanie wygenerowana podczas wysłania.
antennaInstancesDescription: Wypisz jednego hosta instancji na linię
antennaInstancesDescription: Wymień jeden host serwera w każdym wierszu
regexpError: Błąd regularnego wyrażenia
regexpErrorDescription: 'Wystąpił błąd w regularnym wyrażeniu znajdującym się w linijce
{line} Twoich {tab} wyciszeń słownych:'
forwardReportIsAnonymous: Zamiast Twojego konta, anonimowe konto systemowe zostanie
wyświetlone na zdalnej instancji jako zgłaszający.
forwardReportIsAnonymous: Zamiast twojego konta, anonimowe konto systemowe będzie
wyświetlane jako zgłaszający na zdalnym serwerze.
breakFollowConfirm: Czy na pewno chcesz usunąć obserwującego?
instanceDefaultThemeDescription: Wpisz kod motywu w formacie obiektowym.
mutePeriod: Długość wyciszenia
@ -1887,7 +1886,7 @@ pushNotification: Powiadomienia push
subscribePushNotification: Włącz powiadomienia push
unsubscribePushNotification: Wyłącz powiadomienia push
pushNotificationAlreadySubscribed: Powiadomienia push są już włączone
pushNotificationNotSupported: Twoja przeglądarka lub instancja nie obsługuje powiadomień
pushNotificationNotSupported: Twoja przeglądarka lub serwer nie obsługuje powiadomień
push
sendPushNotificationReadMessage: Usuń powiadomienia push, gdy odpowiednie powiadomienia
lub wiadomości zostaną odczytane
@ -1912,21 +1911,20 @@ proxyAccountDescription: Konto proxy jest kontem które w określonych sytuacjac
do listy, oraz żaden lokalny użytkownik nie obserwuje tego konta, aktywność owego
użytkownika nie zostanie dostarczona na oś czasu. W takim razie, użytkownika zaobserwuje
konto proxy.
objectStorageBaseUrlDesc: "URL stosowany jako odniesienie. Podaj URL twojego CDN,\
\ albo proxy, jeśli używasz któregokolwiek.\nDla S3 użyj 'https://<bucket>.s3.amazonaws.com',\
\ a dla GCS i jego odpowiedników użyj 'https://storage.googleapis.com/<bucket>',\
\ itd."
sendErrorReportsDescription: "Gdy ta opcja jest włączona, szczegółowe informacje o\
\ błędach będą udostępnianie z Calckey gdy wystąpi problem, pomagając w ulepszaniu\
\ Calckey.\nZawrze to informacje takie jak wersja twojego systemu operacyjnego,\
\ przeglądarki, Twoja aktywność na Calckey itd."
privateModeInfo: Jeśli włączone, tylko dopuszczone instancje będą mogły federować
z Twoją instancją. Wszystkie posty będą jedynie widoczne na Twojej instancji.
objectStorageBaseUrlDesc: "URL stosowany jako odniesienie. Podaj URL twojego CDN,
albo proxy, jeśli używasz któregokolwiek.\nDla S3 użyj 'https://<bucket>.s3.amazonaws.com',
a dla GCS i jego odpowiedników użyj 'https://storage.googleapis.com/<bucket>', itd."
sendErrorReportsDescription: "Gdy ta opcja jest włączona, szczegółowe informacje o
błędach będą udostępnianie z Calckey gdy wystąpi problem, pomagając w ulepszaniu
Calckey.\nZawrze to informacje takie jak wersja twojego systemu operacyjnego, przeglądarki,
Twoja aktywność na Calckey itd."
privateModeInfo: Gdy ta opcja jest włączona, tylko serwery z białej listy mogą federować
się z twoim serwerem. Wszystkie posty będą ukryte publicznie.
oneHour: Godzina
oneDay: Dzień
oneWeek: Tydzień
recommendedInstances: Polecane instancje
recommendedInstancesDescription: Polecane instancje, mające pojawić się w odpowiedniej
recommendedInstances: Polecane serwery
recommendedInstancesDescription: Polecane serwery, mające pojawić się w odpowiedniej
osi czasu, oddzielane nowymi liniami. NIE dodawaj “https://”, TYLKO samą domenę.
rateLimitExceeded: Przekroczono ratelimit
cropImage: Kadruj zdjęcie
@ -1936,7 +1934,9 @@ noEmailServerWarning: Serwer email nie jest skonfigurowany.
thereIsUnresolvedAbuseReportWarning: Istnieją nierozwiązane zgłoszenia.
check: Sprawdź
driveCapOverrideLabel: Zmień pojemność dysku dla tego użytkownika
isSystemAccount: Konto założone i automatycznie zarządzane przez system.
isSystemAccount: To konto jest tworzone i automatycznie obsługiwane przez system.
Nie moderuj, nie edytuj, nie usuwaj, ani w żaden inny sposób nie ingeruj w to konto,
bowiem może to uszkodzić twój serwer.
typeToConfirm: Wpisz {x} by potwierdzić
deleteAccount: Usuń konto
document: Dokumentacja
@ -1982,20 +1982,20 @@ customKaTeXMacroDescription: 'Skonfiguruj makra, aby łatwo pisać wyrażenia ma
nie można przerwać linii w środku definicji. Nieprawidłowe linie są po prostu ignorowane.
Obsługiwane są tylko proste funkcje podstawiania łańcuchów; nie można tu stosować
zaawansowanej składni, takiej jak warunkowe rozgałęzienia.'
secureModeInfo: Nie odsyłaj bez dowodu przy żądaniu z innych instancji.
secureModeInfo: W przypadku żądań z innych serwerów nie odsyłaj bez dowodu.
preferencesBackups: Kopie zapasowe ustawień
undeck: Opuść tablicę
reporter: Osoba zgłaszająca
instanceDefaultDarkTheme: Domyślny ciemny motyw instancji
instanceDefaultDarkTheme: Domyślny ciemny motyw serwera
lastCommunication: Ostatnie połączenie
emailRequiredForSignup: Wymagaj adresu email przy rejestracji
themeColor: Kolor znacznika instancji
instanceDefaultLightTheme: Domyślny jasny motyw instancji
themeColor: Kolor znacznika serwera
instanceDefaultLightTheme: Domyślny jasny motyw serwera
enableEmojiReactions: Włącz reakcje emoji
showEmojisInReactionNotifications: Pokazuj emoji w powiadomieniach reakcyjnych
apps: Aplikacje
silenceThisInstance: Wycisz tę instancję
silencedInstances: Wyciszone instancje
silenceThisInstance: Wycisz ten serwer
silencedInstances: Wyciszone serwery
deleted: Usunięte
editNote: Edytuj wpis
edited: Edytowany
@ -2004,12 +2004,28 @@ findOtherInstance: Znajdź inny serwer
userSaysSomethingReasonReply: '{name} odpowiedział na wpis zawierający {reason}'
userSaysSomethingReasonRenote: '{name} podbił post zawierający {reason}'
signupsDisabled: Rejestracja na tym serwerze jest obecnie zamknięta, ale zawsze możesz
się zapisać na innym! Jeśli masz kod zaproszeniowy na ten serwer, wpisz go poniżej.
zarejestrować się na innym serwerze! Jeśli masz kod zaproszenia na ten serwer, wpisz
go poniżej.
userSaysSomethingReasonQuote: '{name} zacytował wpis zawierający {reason}'
silencedInstancesDescription: Wymień nazwy domenowe instancji, które chcesz wyciszyć.
Profile w wyciszonych instancjach są traktowane jako "Wyciszony", mogą jedynie wysyłać
prośby obserwacji, i nie mogą oznaczać w wzmiankach profili lokalnych jeśli nie
są obserwowane. To nie będzie miało wpływu na zablokowane instancje.
silencedInstancesDescription: Wypisz nazwy hostów serwerów, które chcesz wyciszyć.
Konta na wymienionych serwerach są traktowane jako "Wyciszone", mogą jedynie wysyłać
prośby obserwacji i nie mogą oznaczać we wzmiankach profili lokalnych jeśli nie
są obserwowane. To nie będzie miało wpływu na zablokowane serwery.
cannotUploadBecauseExceedsFileSizeLimit: Ten plik nie mógł być przesłany, ponieważ
jego wielkość przekracza dozwolony limit.
sendModMail: Wyślij Powiadomienie Moderacyjne
searchPlaceholder: Szukaj Calckey
jumpToPrevious: Przejdź do poprzedniej sekcji
listsDesc: Listy umożliwiają tworzenie osi czasu z określonymi użytkownikami. Dostęp
do nich można uzyskać na stronie osi czasu.
accessibility: Dostępność
selectChannel: Wybierz kanał
antennasDesc: "Anteny wyświetlają nowe posty spełniające ustawione przez Ciebie kryteria!\n
Dostęp do nich można uzyskać ze strony osi czasu."
expandOnNoteClick: Otwórz post przy kliknięciu
expandOnNoteClickDesc: Jeśli opcja ta jest wyłączona, nadal będzie można otwierać
posty w menu po kliknięciu prawym przyciskiem myszy lub klikając znacznik czasowy.
channelFederationWarn: Kanały nie są jeszcze federowane z innymi serwerami
newer: nowsze
older: starsze
cw: Ostrzeżenie zawartości

View file

@ -418,7 +418,7 @@ router.get("/notes/:note", async (ctx, next) => {
ctx.set("Cache-Control", "public, max-age=15");
ctx.set(
"Content-Security-Policy",
"default-src 'self' 'unsafe-inline'; img-src '*'; frame-ancestors '*'",
"default-src 'self' 'unsafe-inline'; img-src *; frame-ancestors *",
);
return;

View file

@ -57,6 +57,12 @@ export default defineComponent({
if (t == null) return null;
return t.match(/^[0-9.]+s$/) ? t : null;
};
const validNumber = (n: string | null | undefined) => {
if (n == null) return null;
const parsed = parseFloat(n);
return !isNaN(parsed) && isFinite(parsed) && parsed > 0;
};
// const validEase = (e: string | null | undefined) => {
// if (e == null) return null;
// return e.match(/(steps)?\(-?[0-9.]+,-?[0-9.]+,-?[0-9.]+,-?[0-9.]+\)/)
@ -109,26 +115,30 @@ export default defineComponent({
case "tada": {
const speed = validTime(token.props.args.speed) || "1s";
const delay = validTime(token.props.args.delay) || "0s";
const loop = validNumber(token.props.args.loop) || "infinite";
// const ease = validEase(token.props.args.ease) || "linear";
style = `font-size: 150%; animation: tada ${speed} ${delay} linear infinite both;`;
style = `font-size: 150%; animation: tada ${speed} ${delay} linear ${loop} both;`;
break;
}
case "jelly": {
const speed = validTime(token.props.args.speed) || "1s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-rubberBand ${speed} ${delay} linear infinite both;`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-rubberBand ${speed} ${delay} linear ${loop} both;`;
break;
}
case "twitch": {
const speed = validTime(token.props.args.speed) || "0.5s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-twitch ${speed} ${delay} ease infinite;`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-twitch ${speed} ${delay} ease ${loop};`;
break;
}
case "shake": {
const speed = validTime(token.props.args.speed) || "0.5s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-shake ${speed} ${delay} ease infinite;`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-shake ${speed} ${delay} ease ${loop};`;
break;
}
case "spin": {
@ -144,25 +154,29 @@ export default defineComponent({
: "mfm-spin";
const speed = validTime(token.props.args.speed) || "1.5s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: ${anime} ${speed} ${delay} linear infinite; animation-direction: ${direction};`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: ${anime} ${speed} ${delay} linear ${loop}; animation-direction: ${direction};`;
break;
}
case "jump": {
const speed = validTime(token.props.args.speed) || "0.75s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-jump ${speed} ${delay} linear infinite;`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-jump ${speed} ${delay} linear ${loop};`;
break;
}
case "bounce": {
const speed = validTime(token.props.args.speed) || "0.75s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-bounce ${speed} ${delay} linear infinite; transform-origin: center bottom;`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-bounce ${speed} ${delay} linear ${loop}; transform-origin: center bottom;`;
break;
}
case "rainbow": {
const speed = validTime(token.props.args.speed) || "1s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-rainbow ${speed} ${delay} linear infinite;`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-rainbow ${speed} ${delay} linear ${loop};`;
break;
}
case "sparkle": {
@ -177,7 +191,8 @@ export default defineComponent({
: "alternate";
const speed = validTime(token.props.args.speed) || "1.5s";
const delay = validTime(token.props.args.delay) || "0s";
style = `animation: mfm-fade ${speed} ${delay} linear infinite; animation-direction: ${direction};`;
const loop = validNumber(token.props.args.loop) || "infinite";
style = `animation: mfm-fade ${speed} ${delay} linear ${loop}; animation-direction: ${direction};`;
break;
}
case "flip": {

View file

@ -472,14 +472,14 @@ let preview_quote = $ref(`> ${i18n.ts._mfm.dummy}`);
let preview_search = $ref(
`${i18n.ts._mfm.dummy} [search]\n${i18n.ts._mfm.dummy} [検索]\n${i18n.ts._mfm.dummy} 検索`
);
let preview_jelly = $ref("$[jelly 🍮] $[jelly.speed=5s 🍮]");
let preview_tada = $ref("$[tada 🍮] $[tada.speed=5s 🍮]");
let preview_jump = $ref("$[jump 🍮] $[jump.speed=5s 🍮]");
let preview_bounce = $ref("$[bounce 🍮] $[bounce.speed=5s 🍮]");
let preview_shake = $ref("$[shake 🍮] $[shake.speed=5s 🍮]");
let preview_twitch = $ref("$[twitch 🍮] $[twitch.speed=5s 🍮]");
let preview_jelly = $ref("$[jelly 🍮] $[jelly.speed=3s 🍮] $[jelly.delay=3s 🍮] $[jelly.loop=3 🍮]");
let preview_tada = $ref("$[tada 🍮] $[tada.speed=3s 🍮] $[tada.delay=3s 🍮] $[tada.loop=3 🍮]");
let preview_jump = $ref("$[jump 🍮] $[jump.speed=3s 🍮] $[jump.delay=3s 🍮] $[jump.loop=3 🍮]");
let preview_bounce = $ref("$[bounce 🍮] $[bounce.speed=3s 🍮] $[bounce.delay=3s 🍮] $[bounce.loop=3 🍮]");
let preview_shake = $ref("$[shake 🍮] $[shake.speed=3s 🍮] $[shake.delay=3s 🍮] $[shake.loop=3 🍮]");
let preview_twitch = $ref("$[twitch 🍮] $[twitch.speed=3s 🍮] $[twitch.delay=3s 🍮] $[twitch.loop=3 🍮]");
let preview_spin = $ref(
"$[spin 🍮] $[spin.left 🍮] $[spin.alternate 🍮]\n$[spin.x 🍮] $[spin.x,left 🍮] $[spin.x,alternate 🍮]\n$[spin.y 🍮] $[spin.y,left 🍮] $[spin.y,alternate 🍮]\n\n$[spin.speed=5s 🍮]"
"$[spin 🍮] $[spin.left 🍮] $[spin.alternate 🍮]\n$[spin.x 🍮] $[spin.x,left 🍮] $[spin.x,alternate 🍮]\n$[spin.y 🍮] $[spin.y,left 🍮] $[spin.y,alternate 🍮]\n\n$[spin.speed=3s 🍮] $[spin.delay=3s 🍮] $[spin.loop=3 🍮]"
);
let preview_flip = $ref(
`$[flip ${i18n.ts._mfm.dummy}]\n$[flip.v ${i18n.ts._mfm.dummy}]\n$[flip.h,v ${i18n.ts._mfm.dummy}]`
@ -491,26 +491,26 @@ let preview_x2 = $ref("$[x2 🍮]");
let preview_x3 = $ref("$[x3 🍮]");
let preview_x4 = $ref("$[x4 🍮]");
let preview_blur = $ref(`$[blur ${i18n.ts._mfm.dummy}]`);
let preview_rainbow = $ref("$[rainbow 🍮] $[rainbow.speed=5s 🍮]");
let preview_rainbow = $ref("$[rainbow 🍮] $[rainbow.speed=3s 🍮] $[rainbow.delay=3s 🍮] $[rainbow.loop=3 🍮]");
let preview_sparkle = $ref("$[sparkle 🍮]");
let preview_rotate = $ref(
"$[rotate 🍮]\n$[rotate.deg=45 🍮]\n$[rotate.x,deg=45 Hello, world!]"
);
let preview_position = $ref(
"$[position.y=-1 Positioning]\n$[position.x=-1 Positioning]"
"$[position.y=-1 🍮]\n$[position.x=-1 🍮]"
);
let preview_crop = $ref(
"$[crop.top=50 🍮] $[crop.right=50 🍮] $[crop.bottom=50 🍮] $[crop.left=50 🍮]"
);
let preview_scale = $ref(
"$[scale.x=1.3 Scaling]\n$[scale.x=1.3,y=2 Scaling]\n$[scale.y=0.3 Tiny scaling]"
"$[scale.x=1.3 🍮]\n$[scale.x=1.5,y=3 🍮]\n$[scale.y=0.3 🍮]"
);
let preview_fg = $ref("$[fg.color=ff0000 Text color]");
let preview_bg = $ref("$[bg.color=ff0000 Background color]");
let preview_fg = $ref("$[fg.color=eb6f92 Text color]");
let preview_bg = $ref("$[bg.color=31748f Background color]");
let preview_plain = $ref(
"<plain>**bold** @mention #hashtag `code` $[x2 🍮]</plain>"
);
let preview_fade = $ref("$[fade 🍮] $[fade.out 🍮] $[fade.speed=5s 🍮]");
let preview_fade = $ref("$[fade 🍮] $[fade.out 🍮] $[fade.speed=3s 🍮] $[fade.delay=3s 🍮]");
definePageMetadata({
title: i18n.ts._mfm.cheatSheet,