diff --git a/web/src/layouts/RootLayout.tsx b/web/src/layouts/RootLayout.tsx
index f369c14e..f37e9c33 100644
--- a/web/src/layouts/RootLayout.tsx
+++ b/web/src/layouts/RootLayout.tsx
@@ -10,8 +10,10 @@ import useResponsiveWidth from "@/hooks/useResponsiveWidth";
import Loading from "@/pages/Loading";
import { Routes } from "@/router";
import { useMemoFilterStore } from "@/store/v1";
+import { useTranslate } from "@/utils/i18n";
const RootLayout = () => {
+ const t = useTranslate();
const location = useLocation();
const { sm } = useResponsiveWidth();
const currentUser = useCurrentUser();
@@ -54,10 +56,10 @@ const RootLayout = () => {
>
{!collapsed ? (
}>
- Collapse
+ {t("common.collapse")}
) : (
-
+
diff --git a/web/src/locales/en.json b/web/src/locales/en.json
index 1853c239..e83bf19b 100644
--- a/web/src/locales/en.json
+++ b/web/src/locales/en.json
@@ -20,6 +20,7 @@
"clear": "Clear",
"close": "Close",
"confirm": "Confirm",
+ "collapse": "Collapse",
"create": "Create",
"database": "Database",
"days": "Days",
@@ -27,6 +28,7 @@
"description": "Description",
"edit": "Edit",
"email": "Email",
+ "expand": "Expand",
"explore": "Explore",
"file": "File",
"filter": "Filter",
diff --git a/web/src/locales/pl.json b/web/src/locales/pl.json
index 8d92778b..312615cc 100644
--- a/web/src/locales/pl.json
+++ b/web/src/locales/pl.json
@@ -1,42 +1,53 @@
{
"auth": {
"create-your-account": "Utwórz swoje konto",
- "host-tip": "Rejestrujesz się jako właściciel strony.",
+ "host-tip": "Rejestrujesz się jako Gospodarz Strony.",
"new-password": "Nowe hasło",
- "repeat-new-password": "Powtórz nowe hasło"
+ "repeat-new-password": "Powtórz nowe hasło",
+ "sign-in-tip": "Masz już konto?",
+ "sign-up-tip": "Nie masz jeszcze konta?"
},
"common": {
- "about": "O aplikacji",
- "admin": "Admin",
- "archive": "Archiwizuj",
+ "about": "O nas",
+ "admin": "Administrator",
+ "archive": "Archiwum",
"archived": "Zarchiwizowane",
"avatar": "Awatar",
- "basic": "Podstawowe",
+ "basic": "Podstawowy",
"beta": "Beta",
"cancel": "Anuluj",
"change": "Zmień",
"clear": "Wyczyść",
"close": "Zamknij",
"confirm": "Potwierdź",
+ "collapse": "Zwiń",
"create": "Utwórz",
"database": "Baza danych",
+ "days": "Dni",
"delete": "Usuń",
+ "description": "Opis",
"edit": "Edytuj",
"email": "Email",
- "explore": "Odkrywaj",
- "filter": "Filtruj",
- "image": "Obrazek",
+ "expand": "Rozwiń",
+ "explore": "Odkryj",
+ "file": "Plik",
+ "filter": "Filtr",
+ "home": "Strona główna",
+ "image": "Obraz",
"inbox": "Skrzynka odbiorcza",
"language": "Język",
+ "learn-more": "Dowiedz się więcej",
"link": "Link",
- "mark": "Mark",
+ "mark": "Oznacz",
+ "memos": "Notatki",
"name": "Nazwa",
"new": "Nowy",
"nickname": "Pseudonim",
- "null": "Null",
+ "null": "Pusty",
"or": "lub",
"password": "Hasło",
"pin": "Przypnij",
+ "pinned": "Przypięte",
"preview": "Podgląd",
"profile": "Profil",
"remember-me": "Zapamiętaj mnie",
@@ -44,122 +55,220 @@
"reset": "Resetuj",
"resources": "Zasoby",
"restore": "Przywróć",
+ "role": "Rola",
"save": "Zapisz",
+ "search": "Szukaj",
"select": "Wybierz",
"settings": "Ustawienia",
"share": "Udostępnij",
- "sign-in": "Zaloguj",
- "sign-in-with": "Zaloguj z {{provider}}",
- "sign-out": "Wyloguj",
- "sign-up": "Utwórz konto",
+ "sign-in": "Zaloguj się",
+ "sign-in-with": "Zaloguj się za pomocą {{provider}}",
+ "sign-out": "Wyloguj się",
+ "sign-up": "Zarejestruj się",
+ "statistics": "Statystyki",
"tags": "Tagi",
"title": "Tytuł",
"type": "Typ",
"unpin": "Odepnij",
- "update": "Zaktualizuj",
+ "update": "Aktualizuj",
+ "upload": "Prześlij",
"username": "Nazwa użytkownika",
"version": "Wersja",
"visibility": "Widoczność",
- "yourself": "Ty"
+ "yourself": "Ty sam"
},
"days": {
"fri": "Pt",
- "mon": "Pon",
- "sat": "Sob",
- "sun": "Nie",
+ "mon": "Pn",
+ "sat": "Sb",
+ "sun": "Nd",
"thu": "Czw",
"tue": "Wt",
"wed": "Śr"
},
"editor": {
+ "add-your-comment-here": "Dodaj swój komentarz tutaj...",
"any-thoughts": "Jakieś przemyślenia...",
"save": "Zapisz"
},
+ "inbox": {
+ "memo-comment": "{{user}} dodał komentarz do Twojego {{memo}}.",
+ "version-update": "Nowa wersja {{version}} jest już dostępna!"
+ },
"memo": {
- "archived-at": "Zarchiwizowano",
+ "archived-at": "Zarchiwizowano w dniu",
"comment": {
- "self": "Komentarze"
+ "self": "Komentarze",
+ "write-a-comment": "Napisz komentarz"
},
- "copy-link": "Kopiuj odnośnik",
- "delete-memo": "Usuń notatkę",
+ "copy-link": "Kopiuj link",
+ "count-memos-in-date": "{{count}} notatek w dniu {{date}}",
+ "delete-confirm": "Czy na pewno chcesz usunąć tę notatkę? TA AKCJA JEST NIEODWRACALNA",
+ "load-more": "Załaduj więcej",
+ "no-archived-memos": "Brak zarchiwizowanych notatek.",
+ "search-placeholder": "Szukaj notatek",
+ "show-more": "Pokaż więcej",
"view-detail": "Zobacz szczegóły",
"visibility": {
"disabled": "Publiczne notatki są wyłączone",
- "private": "Widoczne tylko dla ciebie",
- "protected": "Widoczne dla użytkowników",
+ "private": "Prywatne",
+ "protected": "Przestrzeń robocza",
"public": "Publiczne"
- }
+ },
+ "links": "Linki",
+ "to-do": "Lista zadań",
+ "code": "Kod"
},
"message": {
- "change-memo-created-time": "Zmień datę utworzenia notatki",
+ "archived-successfully": "Zarchiwizowano pomyślnie",
+ "change-memo-created-time": "Zmień date utworzenia notatki",
"copied": "Skopiowano",
- "fill-all": "Proszę uzupełnij wszystkie pola.",
- "memo-not-found": "Nie znaleziono notatki.",
- "new-password-not-match": "Nowe hasła się nie zgadzają.",
- "password-changed": "Zmieniono hasło",
- "password-not-match": "Hasła się nie zgadzają.",
- "restored-successfully": "Pomyślnie przywrócono",
- "succeed-copy-link": "Skopiowano link do schowka.",
- "update-succeed": "Aktualizacja się powiodła",
- "user-not-found": "Nie znaleziono użytkownika"
+ "deleted-successfully": "Usunięto pomyślnie",
+ "fill-all": "Proszę wypełnić wszystkie pola.",
+ "maximum-upload-size-is": "Maksymalny dozwolony rozmiar przesyłanego pliku to {{size}} MiB",
+ "memo-not-found": "Notatka nie została znaleziona.",
+ "new-password-not-match": "Nowe hasła nie pasują do siebie.",
+ "no-data": "Nie znaleziono danych.",
+ "password-changed": "Hasło zostało zmienione",
+ "password-not-match": "Hasła nie pasują do siebie.",
+ "restored-successfully": "Przywrócono pomyślnie",
+ "succeed-copy-link": "Link skopiowany pomyślnie.",
+ "update-succeed": "Aktualizacja zakończona sukcesem",
+ "user-not-found": "Użytkownik nie został znaleziony"
+ },
+ "reference": {
+ "add-references": "Dodaj odniesienia",
+ "embedded-usage": "Użyj jako treść osadzoną",
+ "no-memos-found": "Nie znaleziono notatek",
+ "search-placeholder": "Szukaj treści"
},
"resource": {
"clear": "Wyczyść",
- "copy-link": "Kopiuj odnośnik",
+ "copy-link": "Kopiuj link",
"create-dialog": {
"external-link": {
"file-name": "Nazwa pliku",
"file-name-placeholder": "Nazwa pliku",
"link": "Link",
"link-placeholder": "https://link.do/twojego/zasobu",
- "option": "Zewnętrzny odnośnik",
+ "option": "Zewnętrzny link",
"type": "Typ",
"type-placeholder": "Typ pliku"
},
"local-file": {
"choose": "Wybierz plik…",
"option": "Plik lokalny"
- }
+ },
+ "title": "Utwórz Zasób",
+ "upload-method": "Metoda przesyłania"
},
"delete-resource": "Usuń zasób",
+ "delete-selected-resources": "Usuń wybrane zasoby",
"fetching-data": "Pobieranie danych…",
- "linked-amount": "Liczba kwalifikujących się notatek",
+ "file-drag-drop-prompt": "Przeciągnij i upuść plik tutaj, aby go przesłać",
+ "linked-amount": "Ilość powiązań",
+ "no-files-selected": "Nie wybrano plików",
"no-resources": "Brak zasobów.",
"no-unused-resources": "Brak nieużywanych zasobów",
- "reset-link": "Resetuj odnośnik",
- "reset-resource-link": "Resetuj odnośnik zasobu"
+ "reset-link": "Resetuj link",
+ "reset-link-prompt": "Czy na pewno chcesz zresetować link? Spowoduje to zerwanie wszystkich obecnych powiązań linku. TA AKCJA JEST NIEODWRACALNA",
+ "reset-resource-link": "Resetuj link zasobu"
+ },
+ "router": {
+ "back-to-top": "Powrót na górę",
+ "go-to-home": "Przejdź do strony głównej"
},
"setting": {
"account-section": {
"change-password": "Zmień hasło",
+ "email-note": "Opcjonalne",
+ "export-memos": "Eksportuj notatki",
+ "nickname-note": "Wyświetlane w banerze",
+ "openapi-reset": "Resetuj klucz OpenAPI",
+ "openapi-sample-post": "Witaj #memos z {{url}}",
+ "openapi-title": "OpenAPI",
+ "reset-api": "Resetuj API",
"title": "Informacje o koncie",
- "update-information": "Aktualizuj informacje"
+ "update-information": "Zaktualizuj informacje",
+ "username-note": "Używane do logowania"
},
"appearance-option": {
"dark": "Zawsze ciemny",
"light": "Zawsze jasny",
- "system": "Systemowy"
+ "system": "Zgodnie z systemem"
},
- "member": "Użytkownik",
- "member-list": "Lista użytkowników",
+ "member": "Członek",
+ "member-list": "Lista członków",
"member-section": {
- "create-a-member": "Utwórz użytkownika"
+ "archive-member": "Archiwizuj członka",
+ "archive-warning": "Czy na pewno chcesz zarchiwizować {{username}}?",
+ "create-a-member": "Utwórz członka",
+ "delete-member": "Usuń członka",
+ "delete-warning": "Czy na pewno chcesz usunąć {{username}}? TA AKCJA JEST NIEODWRACALNA"
},
"my-account": "Moje konto",
- "preference": "Ustawienia",
+ "preference": "Preferencje",
"preference-section": {
- "default-memo-sort-option": "Wyświetlana data notatki",
- "default-memo-visibility": "Domyślna widoczność notatki",
+ "default-memo-sort-option": "Domyślny czas wyświetlania notatek",
+ "default-memo-visibility": "Domyślna widoczność notatek",
"theme": "Motyw"
},
"sso": "SSO",
+ "sso-section": {
+ "authorization-endpoint": "Punkt autoryzacji",
+ "client-id": "ID klienta",
+ "client-secret": "Tajny klucz klienta",
+ "confirm-delete": "Czy na pewno chcesz usunąć konfigurację SSO \"{{name}}\"? TA AKCJA JEST NIEODWRACALNA",
+ "create-sso": "Utwórz SSO",
+ "custom": "Niestandardowe",
+ "delete-sso": "Potwierdź usunięcie",
+ "disabled-password-login-warning": "Logowanie hasłem jest wyłączone, zachowaj szczególną ostrożność przy usuwaniu dostawców tożsamości",
+ "display-name": "Nazwa wyświetlana",
+ "identifier": "Identyfikator",
+ "identifier-filter": "Filtr identyfikatorów",
+ "redirect-url": "URL przekierowania",
+ "scopes": "Zakresy",
+ "sso-created": "SSO {{name}} utworzono",
+ "sso-list": "Lista SSO",
+ "sso-updated": "SSO {{name}} zaktualizowano",
+ "template": "Szablon",
+ "token-endpoint": "Punkt wydawania tokenów",
+ "update-sso": "Zaktualizuj SSO",
+ "user-endpoint": "Punkt użytkownika"
+ },
"storage": "Przechowywanie",
"storage-section": {
- "create-a-service": "Utwórz serwis",
- "delete-storage": "Usuń serwis przechowywania",
- "storage-services": "Lista usług przechowywania",
- "update-a-service": "Aktualizuj serwis",
- "warning-text": "Czy na pewno chcesz usunąć ten serwis przechowywania? Ta akcja jest nieodwracalna❗"
+ "accesskey": "Klucz dostępu",
+ "accesskey-placeholder": "Klucz dostępu / ID dostępu",
+ "bucket": "Bucket",
+ "bucket-placeholder": "Nazwa bucket",
+ "create-a-service": "Utwórz usługę",
+ "create-storage": "Utwórz magazyn",
+ "current-storage": "Aktualny magazyn obiektów",
+ "delete-storage": "Usuń magazyn",
+ "endpoint": "Punkt końcowy",
+ "local-storage-path": "Ścieżka lokalnego magazynu",
+ "path": "Ścieżka przechowywania",
+ "path-description": "Możesz użyć tych samych dynamicznych zmiennych jak w lokalnym magazynie, takich jak {filename}",
+ "path-placeholder": "niestandardowa/ścieżka",
+ "presign-placeholder": "Wstępnie podpisany URL, opcjonalnie",
+ "region": "Region",
+ "region-placeholder": "Nazwa regionu",
+ "s3-compatible-url": "URL zgodny z S3",
+ "secretkey": "Tajny klucz",
+ "secretkey-placeholder": "Tajny klucz / Klucz dostępu",
+ "storage-services": "Usługi przechowywania",
+ "type-database": "Baza danych",
+ "type-local": "Lokalny system plików",
+ "update-a-service": "Zaktualizuj usługę",
+ "update-local-path": "Zaktualizuj ścieżkę lokalnego magazynu",
+ "update-local-path-description": "Ścieżka lokalnego magazynu to ścieżka względna do pliku bazy danych",
+ "update-storage": "Zaktualizuj magazyn",
+ "url-prefix": "Prefiks URL",
+ "url-prefix-placeholder": "Niestandardowy prefiks URL, opcjonalnie",
+ "url-suffix": "Sufiks URL",
+ "url-suffix-placeholder": "Niestandardowy sufiks URL, opcjonalnie",
+ "warning-text": "Czy na pewno chcesz usunąć usługę przechowywania \"{{name}}\"? TA AKCJA JEST NIEODWRACALNA"
},
"system": "System",
"system-section": {
@@ -167,14 +276,35 @@
"additional-script-placeholder": "Dodatkowy kod JavaScript",
"additional-style": "Dodatkowy styl",
"additional-style-placeholder": "Dodatkowy kod CSS",
- "allow-user-signup": "Zezwól na rejestrację",
+ "allow-user-signup": "Zezwól na rejestrację użytkowników",
"customize-server": {
+ "appearance": "Wygląd serwera",
+ "description": "Opis",
"icon-url": "URL ikony",
- "title": "Personalizuj serwer"
+ "locale": "Język serwera",
+ "title": "Dostosuj serwer"
},
+ "disable-password-login": "Wyłącz logowanie hasłem",
+ "disable-password-login-final-warning": "Proszę wpisać \"CONFIRM\", jeśli wiesz, co robisz.",
+ "disable-password-login-warning": "To wyłączy logowanie hasłem dla wszystkich użytkowników. Jeśli skonfigurowani dostawcy tożsamości zawiodą, nie będzie możliwe zalogowanie się bez przywrócenia tego ustawienia w bazie danych. Bądź także szczególnie ostrożny przy usuwaniu dostawcy tożsamości",
"disable-public-memos": "Wyłącz publiczne notatki",
- "display-with-updated-time": "Display with updated time",
+ "display-with-updated-time": "Wyświetlaj z czasem aktualizacji",
+ "enable-auto-compact": "Włącz automatyczne kompresowanie",
+ "enable-double-click-to-edit": "Włącz edycję przez podwójne kliknięcie",
+ "enable-password-login": "Włącz logowanie hasłem",
+ "enable-password-login-warning": "To włączy logowanie hasłem dla wszystkich użytkowników. Kontynuuj tylko wtedy, gdy chcesz, aby użytkownicy mogli logować się za pomocą zarówno SSO, jak i hasła",
+ "max-upload-size": "Maksymalny rozmiar przesyłanego pliku (MiB)",
+ "max-upload-size-hint": "Zalecana wartość to 32 MiB.",
"server-name": "Nazwa serwera"
- }
+ },
+ "memo-related": "Notatki"
+ },
+ "tag": {
+ "all-tags": "Wszystkie tagi",
+ "create-tag": "Utwórz tag",
+ "create-tags-guide": "Możesz tworzyć tagi, wpisując `#tag`.",
+ "delete-confirm": "Czy na pewno chcesz usunąć ten tag? Wszystkie powiązane notatki zostaną zarchiwizowane.",
+ "delete-tag": "Usuń tag",
+ "no-tag-found": "Nie znaleziono tagu"
}
}