From e8626298523c0e02aa55ef6f976207cd5ea78da4 Mon Sep 17 00:00:00 2001 From: hoek Date: Sun, 19 Jan 2025 20:01:09 +0100 Subject: [PATCH] feat: add support for Polish --- src/i18n/index.ts | 3 +- src/i18n/locales/pl.json | 137 +++++++++++++++++++++++++++++++++++++++ src/store/state/types.ts | 6 +- 3 files changed, 143 insertions(+), 3 deletions(-) create mode 100644 src/i18n/locales/pl.json diff --git a/src/i18n/index.ts b/src/i18n/index.ts index f218c864..6b5ac101 100644 --- a/src/i18n/index.ts +++ b/src/i18n/index.ts @@ -6,8 +6,9 @@ import ptbr from './locales/pt-br.json?url'; import tr from './locales/tr.json?url'; import it from './locales/it.json?url'; import hu from './locales/hu.json?url'; +import pl from './locales/pl.json?url'; -const localeUrls = { de, en, tr, it, 'pt-br': ptbr, cze, hu }; +const localeUrls = { de, en, tr, it, 'pt-br': ptbr, cze, hu, pl }; export const availableLocales = Object.keys(localeUrls); diff --git a/src/i18n/locales/pl.json b/src/i18n/locales/pl.json new file mode 100644 index 00000000..ed7f2d07 --- /dev/null +++ b/src/i18n/locales/pl.json @@ -0,0 +1,137 @@ +{ + "navigation": { + "tools": { + "tools": "Narzędzia", + "changePassword": { + "change": "Zmień hasło", + "current": "Obecne hasło", + "new": "Nowe hasło", + "invalid": "Obecne hasło jest nieprawidłowe.", + "unknownError": "Coś poszło nie tak, spróbuj ponownie później." + }, + "copyPaste": { + "copy": "Skopiuj dane z {year}", + "paste": "Wklej dane z {from} do {to}", + "confirm": "Czy na pewno chcesz skopiować dane z {from} do {to}?" + }, + "demo": { + "loadDemoData": "Załaduj dane demo" + }, + "deleteYear": { + "delete": "Usuń {year}", + "confirm": "Czy na pewno chcesz usunąć {year}?" + }, + "export": { + "export": "Eksportuj do pliku json" + }, + "import": { + "import": "Importuj z pliku json", + "what": { + "google": "Plik rocznego budżetu Google Sheets", + "ocular": "Uprzednio wyeksportowany plik", + "title": "Co chcesz zaimportować?" + }, + "ocular": { + "pickFile": "Wybierz plik .json do importu", + "import": "Importuj dane ocular" + }, + "google": { + "import": "Importuj dane z Google", + "pickFile": "Wybierz plik .csv do importu", + "expenses": "Wydatki.csv", + "income": "Dochody.csv" + } + }, + "privacyMode": { + "disable": "Przełącz na tryb publiczny", + "enable": "Przełącz na tryb prywatny" + } + }, + "language": { + "switch": "Zmień język" + }, + "info": { + "about": "O Ocular", + "github": "Sprawdź ten projekt na {link}!", + "madeWithLove": "Stworzone z ❤️ przez Simona", + "meta": "{version} / {date} / {sha}" + }, + "currency": { + "change": "Zmień walutę używaną w aplikacji" + }, + "theme": { + "change": "Zmień kolor motywu" + }, + "year": { + "change": "Przełącz na inny rok" + }, + "auth": { + "welcomeBack": "Witaj ponownie!", + "signIn": "Zaloguj się", + "username": "Nazwa użytkownika", + "password": "Hasło", + "loginFailed": "Logowanie nie powiodło się, nazwa użytkownika i/lub hasło są nieprawidłowe." + }, + "admin": { + "settings": "Ustawienia administratora", + "createUser": "Utwórz użytkownika", + "username": "Nazwa użytkownika", + "password": "Hasło", + "admin": "Administrator", + "conflict": "Użytkownik o tej nazwie już istnieje.", + "error": "Coś poszło nie tak, spróbuj ponownie później.", + "deleteUserConfirmation": "Czy na pewno chcesz usunąć tego użytkownika?", + "manageUsers": "Zarządzaj użytkownikami", + "noUsersFound": "Nie znaleziono użytkowników..." + } + }, + "shared": { + "addGroup": "Dodaj grupę", + "append": "Przenieś “{from}” za “{to}”", + "average": "Średnia", + "move": "Przenieś “{from}”", + "moveInto": "Przenieś “{from}” do “{to}”", + "prepend": "Przesuń “{from}” przed “{to}”", + "fillRow": "Wypełnij wiersz", + "fillRowToRight": "Wypełnij w prawo", + "total": "Suma", + "totals": "Suma całkowita", + "placeholder": "Zacznij od uzupełnienia zakładek dochody / wydatki! :)" + }, + "page": { + "income": { + "title": "Dochody", + "incomeFor": "Dochody za {year}" + }, + "expenses": { + "title": "Wydatki", + "expensesFor": "Wydatki za {year}" + }, + "dashboard": { + "title": "Panel", + "tables": "Tabele", + "income": "Dochody", + "incomeTrend": "Trend dochodów", + "allTime": "Przegląd całościowy", + "allTimeFromTo": "Całość od {from} do {to}", + "expenses": "Wydatki", + "expensesTrend": "Trend wydatków", + "endingBalance": "Stan końcowy", + "budgetFor": "Roczny budżet za {year}", + "remainingBalance": "Pozostały stan do {year}", + "netSavings": "Oszczędności netto", + "yearInThePast": "Rok jest w przeszłości", + "yearInTheFuture": "Rok jest w przyszłości", + "yearEnding": "Rok dobiega końca...", + "yoyIncomeGrowth": "Wzrost dochodów rok do roku", + "yoyExpenseGrowth": "Wzrost wydatków rok do roku", + "allTimeIncome": "Całkowite dochody", + "allTimeExpenses": "Całkowite wydatki", + "allTimeSavings": "Całkowite oszczędności", + "downloadAsPNG": "Pobierz jako PNG", + "downloadAsSVG": "Pobierz jako SVG", + "jumpToIncome": "Zobacz dochody za {year}", + "jumpToExpenses": "Zobacz wydatki za {year}" + } + } +} diff --git a/src/store/state/types.ts b/src/store/state/types.ts index bdb6d092..0cd9e7d1 100644 --- a/src/store/state/types.ts +++ b/src/store/state/types.ts @@ -26,7 +26,8 @@ export const availableCurrencies = [ 'RUB', 'BRL', 'ZAR', - 'HUF' + 'HUF', + 'PLN' ]; export type AvailableCurrency = @@ -52,7 +53,8 @@ export type AvailableCurrency = | 'RUB' | 'BRL' | 'ZAR' - | 'HUF'; + | 'HUF' + | 'PLN'; export interface Budget { id: string;