mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-21 14:21:46 +00:00
feat: Discord links, translation sync, iOS login fix, trip copy fix
- Add Discord button to admin GitHub panel and user menu - Sync all 13 translation files to 1434 keys with native translations - Fix duplicate keys in Polish translation (pl.ts) - Fix iOS login race condition: sameSite strict→lax, loadUser sequence counter - Fix trip copy route: add missing db, Trip, TRIP_SELECT imports
This commit is contained in:
+1545
-1522
File diff suppressed because it is too large
Load Diff
+1540
-1517
File diff suppressed because it is too large
Load Diff
+1545
-1520
File diff suppressed because it is too large
Load Diff
+1542
-1519
File diff suppressed because it is too large
Load Diff
+1547
-1524
File diff suppressed because it is too large
Load Diff
+1541
-1518
File diff suppressed because it is too large
Load Diff
+1542
-1519
File diff suppressed because it is too large
Load Diff
+1542
-1521
File diff suppressed because it is too large
Load Diff
+1541
-1518
File diff suppressed because it is too large
Load Diff
@@ -661,7 +661,6 @@ const pl: Record<string, string | { name: string; category: string }[]> = {
|
||||
'atlas.statsTab': 'Statystyki',
|
||||
'atlas.bucketTab': 'Lista marzeń',
|
||||
'atlas.addBucket': 'Dodaj do listy marzeń',
|
||||
'atlas.bucketNamePlaceholder': 'Miejsce lub cel podróży...',
|
||||
'atlas.bucketNotesPlaceholder': 'Notatki (opcjonalnie)',
|
||||
'atlas.bucketEmpty': 'Twoja lista marzeń jest pusta',
|
||||
'atlas.bucketEmptyHint': 'Dodaj miejsca, które chcesz odwiedzić',
|
||||
@@ -674,7 +673,6 @@ const pl: Record<string, string | { name: string; category: string }[]> = {
|
||||
'atlas.nextTrip': 'Następna podróż',
|
||||
'atlas.daysLeft': 'dni do wyjazdu',
|
||||
'atlas.streak': 'Streak',
|
||||
'atlas.year': 'rok',
|
||||
'atlas.years': 'lata',
|
||||
'atlas.yearInRow': 'rok z rzędu',
|
||||
'atlas.yearsInRow': 'lat z rzędu',
|
||||
@@ -1388,6 +1386,151 @@ const pl: Record<string, string | { name: string; category: string }[]> = {
|
||||
'collab.polls.options': 'Opcje',
|
||||
'collab.polls.delete': 'Usuń',
|
||||
'collab.polls.closedSection': 'Zamknięte',
|
||||
'common.import': 'Importuj',
|
||||
'common.saved': 'Zapisano',
|
||||
'trips.reminder': 'Przypomnienie',
|
||||
'trips.reminderNone': 'Brak',
|
||||
'trips.reminderDay': 'dzień',
|
||||
'trips.reminderDays': 'dni',
|
||||
'trips.reminderCustom': 'Niestandardowe',
|
||||
'trips.reminderDaysBefore': 'dni przed wyjazdem',
|
||||
'trips.reminderDisabledHint': 'Przypomnienia o podróżach są wyłączone.',
|
||||
'dashboard.members': 'Towarzysze',
|
||||
'dashboard.copyTrip': 'Kopiuj',
|
||||
'dashboard.copySuffix': 'kopia',
|
||||
'dashboard.toast.copied': 'Podróż skopiowana!',
|
||||
'dashboard.toast.copyError': 'Nie udało się skopiować podróży',
|
||||
'admin.notifications.title': 'Powiadomienia',
|
||||
'admin.notifications.hint': 'Wybierz jeden kanał powiadomień.',
|
||||
'admin.notifications.none': 'Wyłączone',
|
||||
'admin.notifications.email': 'Email (SMTP)',
|
||||
'admin.notifications.webhook': 'Webhook',
|
||||
'admin.notifications.events': 'Zdarzenia powiadomień',
|
||||
'admin.notifications.eventsHint': 'Wybierz zdarzenia wyzwalające powiadomienia.',
|
||||
'admin.notifications.configureFirst': 'Najpierw skonfiguruj ustawienia SMTP lub webhook.',
|
||||
'admin.notifications.save': 'Zapisz ustawienia powiadomień',
|
||||
'admin.notifications.saved': 'Ustawienia powiadomień zapisane',
|
||||
'admin.notifications.testWebhook': 'Wyślij testowy webhook',
|
||||
'admin.notifications.testWebhookSuccess': 'Testowy webhook wysłany pomyślnie',
|
||||
'admin.notifications.testWebhookFailed': 'Testowy webhook nie powiódł się',
|
||||
'admin.webhook.hint': 'Wysyłaj powiadomienia do zewnętrznego webhooka.',
|
||||
'settings.notificationsDisabled': 'Powiadomienia nie są skonfigurowane.',
|
||||
'settings.notificationsActive': 'Aktywny kanał',
|
||||
'settings.notificationsManagedByAdmin': 'Zdarzenia konfigurowane przez administratora.',
|
||||
'settings.mustChangePassword': 'Musisz zmienić hasło przed kontynuowaniem.',
|
||||
'login.setNewPassword': 'Ustaw nowe hasło',
|
||||
'login.setNewPasswordHint': 'Musisz zmienić hasło.',
|
||||
'atlas.searchCountry': 'Szukaj kraju...',
|
||||
'trip.loadingPhotos': 'Ładowanie zdjęć...',
|
||||
'places.importGoogleList': 'Lista Google',
|
||||
'places.googleListHint': 'Wklej link do listy Google Maps.',
|
||||
'places.googleListImported': 'Zaimportowano {count} miejsc',
|
||||
'places.googleListError': 'Nie udało się zaimportować listy',
|
||||
'places.viewDetails': 'Zobacz szczegóły',
|
||||
'inspector.trackStats': 'Statystyki trasy',
|
||||
'budget.exportCsv': 'Eksportuj CSV',
|
||||
'budget.table.date': 'Data',
|
||||
'memories.testFirst': 'Najpierw przetestuj połączenie',
|
||||
'memories.linkAlbum': 'Połącz album',
|
||||
'memories.selectAlbum': 'Wybierz album Immich',
|
||||
'memories.noAlbums': 'Nie znaleziono albumów',
|
||||
'memories.syncAlbum': 'Synchronizuj album',
|
||||
'memories.unlinkAlbum': 'Odłącz album',
|
||||
'memories.photos': 'zdjęcia',
|
||||
'memories.error.loadAlbums': 'Nie udało się załadować albumów',
|
||||
'memories.error.linkAlbum': 'Nie udało się połączyć albumu',
|
||||
'memories.error.unlinkAlbum': 'Nie udało się odłączyć albumu',
|
||||
'memories.error.syncAlbum': 'Nie udało się zsynchronizować albumu',
|
||||
'memories.error.loadPhotos': 'Nie udało się załadować zdjęć',
|
||||
'memories.error.addPhotos': 'Nie udało się dodać zdjęć',
|
||||
'memories.error.removePhoto': 'Nie udało się usunąć zdjęcia',
|
||||
'memories.error.toggleSharing': 'Nie udało się zaktualizować udostępniania',
|
||||
'collab.chat.reply': 'Odpowiedz',
|
||||
'admin.tabs.permissions': 'Uprawnienia',
|
||||
'perm.title': 'Ustawienia uprawnień',
|
||||
'perm.subtitle': 'Kontroluj uprawnienia w aplikacji',
|
||||
'perm.saved': 'Ustawienia uprawnień zapisane',
|
||||
'perm.resetDefaults': 'Przywróć domyślne',
|
||||
'perm.customized': 'dostosowane',
|
||||
'perm.level.admin': 'Tylko admin',
|
||||
'perm.level.tripOwner': 'Właściciel podróży',
|
||||
'perm.level.tripMember': 'Członkowie podróży',
|
||||
'perm.level.everybody': 'Wszyscy',
|
||||
'perm.cat.trip': 'Zarządzanie podróżami',
|
||||
'perm.cat.members': 'Zarządzanie członkami',
|
||||
'perm.cat.files': 'Pliki',
|
||||
'perm.cat.content': 'Treść i harmonogram',
|
||||
'perm.cat.extras': 'Budżet, pakowanie i współpraca',
|
||||
'perm.action.trip_create': 'Tworzenie podróży',
|
||||
'perm.action.trip_edit': 'Edytowanie podróży',
|
||||
'perm.action.trip_delete': 'Usuwanie podróży',
|
||||
'perm.action.trip_archive': 'Archiwizacja podróży',
|
||||
'perm.action.trip_cover_upload': 'Przesyłanie okładki',
|
||||
'perm.action.member_manage': 'Zarządzanie członkami',
|
||||
'perm.action.file_upload': 'Przesyłanie plików',
|
||||
'perm.action.file_edit': 'Edytowanie plików',
|
||||
'perm.action.file_delete': 'Usuwanie plików',
|
||||
'perm.action.place_edit': 'Zarządzanie miejscami',
|
||||
'perm.action.day_edit': 'Edytowanie dni',
|
||||
'perm.action.reservation_edit': 'Zarządzanie rezerwacjami',
|
||||
'perm.action.budget_edit': 'Zarządzanie budżetem',
|
||||
'perm.action.packing_edit': 'Zarządzanie pakowaniem',
|
||||
'perm.action.collab_edit': 'Współpraca',
|
||||
'perm.action.share_manage': 'Zarządzanie udostępnianiem',
|
||||
'perm.actionHint.trip_create': 'Kto może tworzyć nowe podróże',
|
||||
'perm.actionHint.trip_edit': 'Kto może edytować szczegóły podróży',
|
||||
'perm.actionHint.trip_delete': 'Kto może usunąć podróż',
|
||||
'perm.actionHint.trip_archive': 'Kto może archiwizować podróż',
|
||||
'perm.actionHint.trip_cover_upload': 'Kto może zmieniać okładkę',
|
||||
'perm.actionHint.member_manage': 'Kto może zapraszać lub usuwać członków',
|
||||
'perm.actionHint.file_upload': 'Kto może przesyłać pliki',
|
||||
'perm.actionHint.file_edit': 'Kto może edytować pliki',
|
||||
'perm.actionHint.file_delete': 'Kto może usuwać pliki',
|
||||
'perm.actionHint.place_edit': 'Kto może zarządzać miejscami',
|
||||
'perm.actionHint.day_edit': 'Kto może edytować dni i przypisania',
|
||||
'perm.actionHint.reservation_edit': 'Kto może zarządzać rezerwacjami',
|
||||
'perm.actionHint.budget_edit': 'Kto może zarządzać budżetem',
|
||||
'perm.actionHint.packing_edit': 'Kto może zarządzać pakowaniem',
|
||||
'perm.actionHint.collab_edit': 'Kto może korzystać ze współpracy',
|
||||
'perm.actionHint.share_manage': 'Kto może zarządzać linkami',
|
||||
'undo.button': 'Cofnij',
|
||||
'undo.tooltip': 'Cofnij: {action}',
|
||||
'undo.assignPlace': 'Miejsce przypisane do dnia',
|
||||
'undo.removeAssignment': 'Miejsce usunięte z dnia',
|
||||
'undo.reorder': 'Kolejność zmieniona',
|
||||
'undo.optimize': 'Trasa zoptymalizowana',
|
||||
'undo.deletePlace': 'Miejsce usunięte',
|
||||
'undo.moveDay': 'Miejsce przeniesione',
|
||||
'undo.lock': 'Blokada przełączona',
|
||||
'undo.importGpx': 'Import GPX',
|
||||
'undo.importGoogleList': 'Import Google Maps',
|
||||
'undo.addPlace': 'Miejsce dodane',
|
||||
'undo.done': 'Cofnięto: {action}',
|
||||
'notifications.title': 'Powiadomienia',
|
||||
'notifications.markAllRead': 'Oznacz wszystkie jako przeczytane',
|
||||
'notifications.deleteAll': 'Usuń wszystkie',
|
||||
'notifications.showAll': 'Pokaż wszystkie',
|
||||
'notifications.empty': 'Brak powiadomień',
|
||||
'notifications.emptyDescription': "You're all caught up!",
|
||||
'notifications.all': 'Wszystkie',
|
||||
'notifications.unreadOnly': 'Nieprzeczytane',
|
||||
'notifications.markRead': 'Oznacz jako przeczytane',
|
||||
'notifications.markUnread': 'Oznacz jako nieprzeczytane',
|
||||
'notifications.delete': 'Usuń',
|
||||
'notifications.system': 'System',
|
||||
'notifications.test.title': 'Testowe powiadomienie od {actor}',
|
||||
'notifications.test.text': 'To jest powiadomienie testowe.',
|
||||
'notifications.test.booleanTitle': '{actor} prosi o akceptację',
|
||||
'notifications.test.booleanText': 'Testowe powiadomienie z wyborem.',
|
||||
'notifications.test.accept': 'Zatwierdź',
|
||||
'notifications.test.decline': 'Odrzuć',
|
||||
'notifications.test.navigateTitle': 'Sprawdź coś',
|
||||
'notifications.test.navigateText': 'Testowe powiadomienie nawigacyjne.',
|
||||
'notifications.test.goThere': 'Przejdź tam',
|
||||
'notifications.test.adminTitle': 'Komunikat administracyjny',
|
||||
'notifications.test.adminText': '{actor} wysłał testowe powiadomienie.',
|
||||
'notifications.test.tripTitle': '{actor} opublikował w Twojej podróży',
|
||||
'notifications.test.tripText': 'Testowe powiadomienie dla podróży "{trip}".',
|
||||
}
|
||||
|
||||
export default pl
|
||||
|
||||
+1541
-1518
File diff suppressed because it is too large
Load Diff
+1541
-1518
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user