mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-27 21:08:00 +00:00
feat(i18n): add Polish (pl) locale at ~91% coverage (#2731)
This commit is contained in:
@@ -19,6 +19,7 @@ const LOCALE_OPTIONS: Array<{ value: Locale; flag: string; label: string }> = [
|
||||
{ value: 'ru', flag: '🇷🇺', label: 'Русский' },
|
||||
{ value: 'id', flag: '🇮🇩', label: 'Bahasa Indonesia' },
|
||||
{ value: 'it', flag: '🇮🇹', label: 'Italiano' },
|
||||
{ value: 'pl', flag: '🇵🇱', label: 'Polski' },
|
||||
];
|
||||
|
||||
interface LanguageSelectProps {
|
||||
|
||||
@@ -11,6 +11,7 @@ import hi from './hi';
|
||||
import id from './id';
|
||||
import it from './it';
|
||||
import ko from './ko';
|
||||
import pl from './pl';
|
||||
import pt from './pt';
|
||||
import ru from './ru';
|
||||
import type { Locale } from './types';
|
||||
@@ -39,6 +40,7 @@ const translations: Record<Locale, Record<string, string>> = {
|
||||
ru,
|
||||
id,
|
||||
it,
|
||||
pl,
|
||||
};
|
||||
|
||||
// Locales rendered right-to-left.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,463 @@
|
||||
import type { TranslationMap } from '../types';
|
||||
import en2 from './en-2';
|
||||
|
||||
// Polish chunk 2/5. Spreads the English source-of-truth chunk so every key is
|
||||
// present (i18n parity gate); Polish values below override EN where translated.
|
||||
const pl2: TranslationMap = {
|
||||
...en2,
|
||||
// settings.ai (continued)
|
||||
'settings.ai.configStatus': 'Stan konfiguracji',
|
||||
'settings.ai.fallbackMode': 'Tryb awaryjny',
|
||||
'settings.ai.loadedFromRuntime': 'Wczytane ze środowiska',
|
||||
'settings.ai.loadingDuration': 'Czas wczytywania',
|
||||
'settings.ai.localRuntime': 'Lokalne środowisko modelu',
|
||||
'settings.ai.openManager': 'Otwórz menedżera',
|
||||
'settings.ai.retryDownload': 'Ponów pobieranie',
|
||||
'settings.ai.state': 'Stan',
|
||||
'settings.ai.targetModel': 'Model docelowy',
|
||||
'settings.ai.download': 'Pobierz',
|
||||
'settings.ai.localModelUnavailable': 'Stan modelu lokalnego niedostępny.',
|
||||
'settings.ai.soulConfig': 'Konfiguracja persony SOUL',
|
||||
'settings.ai.refreshing': 'Odświeżanie...',
|
||||
'settings.ai.refreshSoul': 'Odśwież SOUL',
|
||||
'settings.ai.loadingSoul': 'Wczytywanie konfiguracji SOUL...',
|
||||
'settings.ai.identity': 'Tożsamość',
|
||||
'settings.ai.personality': 'Osobowość',
|
||||
'settings.ai.safetyRules': 'Zasady bezpieczeństwa',
|
||||
'settings.ai.source': 'Źródło',
|
||||
'settings.ai.loaded': 'Wczytano',
|
||||
'settings.ai.toolsConfig': 'Konfiguracja TOOLS',
|
||||
'settings.ai.refreshTools': 'Odśwież TOOLS',
|
||||
'settings.ai.toolsAvailable': 'Dostępne narzędzia',
|
||||
'settings.ai.tools': 'narzędzia',
|
||||
'settings.ai.activeSkills': 'Aktywne umiejętności',
|
||||
'settings.ai.skills': 'umiejętności',
|
||||
'settings.ai.skillsOverview': 'Przegląd umiejętności',
|
||||
'settings.ai.refreshingAll': 'Odświeżanie wszystkiego...',
|
||||
'settings.ai.refreshAll': 'Odśwież całą konfigurację AI',
|
||||
// settings.notifications
|
||||
'settings.notifications.suppressAll': 'Wycisz wszystkie powiadomienia',
|
||||
'settings.notifications.suppressAllDesc':
|
||||
'Blokuj wszystkie systemowe powiadomienia z osadzonych aplikacji niezależnie od fokusa.',
|
||||
'settings.notifications.toggleDnd': 'Przełącz tryb Nie przeszkadzać',
|
||||
'settings.notifications.categories': 'Kategorie',
|
||||
'settings.notifications.categoryFooter':
|
||||
'Wyłączenie kategorii zatrzymuje nowe powiadomienia tego typu w centrum powiadomień. Istniejące pozostają do czasu wyczyszczenia.',
|
||||
// settings.billing
|
||||
'settings.billing.movedToWeb': 'Rozliczenia przeniesione do sieci',
|
||||
'settings.billing.openDashboard': 'Otwórz panel rozliczeń',
|
||||
'settings.billing.movedToWebDesc':
|
||||
'Zmiany subskrypcji, metody płatności, kredyty i faktury są teraz zarządzane w TinyHumans w sieci.',
|
||||
'settings.billing.backToSettings': 'Powrót do ustawień',
|
||||
'settings.billing.openingBrowser': 'Otwieranie przeglądarki...',
|
||||
'settings.billing.browserNotOpen':
|
||||
'Jeśli przeglądarka się nie otworzyła, użyj przycisku powyżej.',
|
||||
'settings.billing.browserOpenFailed':
|
||||
'Nie udało się otworzyć przeglądarki automatycznie. Użyj przycisku powyżej.',
|
||||
// settings.tools
|
||||
'settings.tools.chooseCapabilities':
|
||||
'Wybierz, z jakich możliwości OpenHuman może korzystać w Twoim imieniu.',
|
||||
'settings.tools.saveChanges': 'Zapisz zmiany',
|
||||
'settings.tools.preferencesSaved': 'Preferencje zapisane',
|
||||
'settings.tools.saveFailed': 'Nie udało się zapisać preferencji. Spróbuj ponownie.',
|
||||
// settings.screenAwareness
|
||||
'settings.screenAwareness.mode': 'Tryb',
|
||||
'settings.screenAwareness.allExceptBlacklist': 'Wszystko oprócz czarnej listy',
|
||||
'settings.screenAwareness.whitelistOnly': 'Tylko biała lista',
|
||||
'settings.screenAwareness.screenMonitoring': 'Monitorowanie ekranu',
|
||||
'settings.screenAwareness.saveSettings': 'Zapisz ustawienia',
|
||||
'settings.screenAwareness.session': 'Sesja',
|
||||
'settings.screenAwareness.status': 'Stan',
|
||||
'settings.screenAwareness.active': 'Aktywna',
|
||||
'settings.screenAwareness.stopped': 'Zatrzymana',
|
||||
'settings.screenAwareness.remaining': 'Pozostało',
|
||||
'settings.screenAwareness.startSession': 'Rozpocznij sesję',
|
||||
'settings.screenAwareness.stopSession': 'Zatrzymaj sesję',
|
||||
'settings.screenAwareness.analyzeNow': 'Analizuj teraz',
|
||||
'settings.screenAwareness.macosOnly':
|
||||
'Przechwytywanie ekranu i zarządzanie uprawnieniami są obecnie obsługiwane tylko na macOS.',
|
||||
// connections
|
||||
'connections.comingSoon': 'Wkrótce',
|
||||
'connections.setUp': 'Skonfiguruj',
|
||||
'connections.configured': 'Skonfigurowano',
|
||||
'connections.unavailable': 'Niedostępne',
|
||||
'connections.checking': 'Sprawdzanie…',
|
||||
'connections.walletConfigured':
|
||||
'Lokalne tożsamości EVM, BTC, Solana i Tron są skonfigurowane z Twojej frazy odzyskiwania.',
|
||||
'connections.walletReady':
|
||||
'Skonfiguruj lokalne tożsamości EVM, BTC, Solana i Tron z jednej frazy odzyskiwania.',
|
||||
'connections.walletError':
|
||||
'Nie można sprawdzić stanu portfela. Dotknij, aby ponowić z panelu Frazy odzyskiwania.',
|
||||
'connections.walletChecking': 'Sprawdzanie stanu portfela...',
|
||||
'connections.walletIdentities': 'Tożsamości portfela',
|
||||
'connections.walletDerived':
|
||||
'Wyprowadzone lokalnie z Twojej frazy odzyskiwania i przechowywane tylko jako bezpieczne metadane.',
|
||||
'connections.privacySecurity': 'Prywatność i bezpieczeństwo',
|
||||
'connections.privacySecurityDesc':
|
||||
'Wszystkie dane i poświadczenia są przechowywane lokalnie z polityką zerowego retencji. Twoje informacje są szyfrowane i nigdy nie są udostępniane stronom trzecim.',
|
||||
// channels
|
||||
'channels.status.connecting': 'Łączenie',
|
||||
'channels.status.notConfigured': 'Nieskonfigurowany',
|
||||
'channels.noActiveRoute': 'Brak aktywnej trasy',
|
||||
'channels.activeRoute': 'Aktywna trasa',
|
||||
'channels.loadingDefinitions': 'Wczytywanie definicji kanałów...',
|
||||
'channels.channelConnections': 'Połączenia kanałów',
|
||||
'channels.configureAuthModes': 'Skonfiguruj tryby uwierzytelniania dla każdego kanału.',
|
||||
'channels.configNotAvailable': 'Konfiguracja dla',
|
||||
'channels.channel': 'kanał',
|
||||
// devOptions
|
||||
'devOptions.coreModeNotSet': 'Tryb rdzenia: nie ustawiony',
|
||||
'devOptions.coreModeNotSetDesc':
|
||||
'Wybór trybu uruchamiania nie został jeszcze potwierdzony. Użyj „Przełącz tryb”, aby wybrać Lokalny lub Chmurowy.',
|
||||
'devOptions.local': 'Lokalny',
|
||||
'devOptions.embeddedCoreSidecar': 'Wbudowany sidecar rdzenia',
|
||||
'devOptions.sidecarSpawned': 'Uruchamiany w procesie powłoki Tauri przy starcie aplikacji.',
|
||||
'devOptions.cloud': 'Chmura',
|
||||
'devOptions.remoteCoreRpc': 'Zdalne RPC rdzenia',
|
||||
'devOptions.token': 'Token',
|
||||
'devOptions.tokenNotSet': 'nie ustawiony — RPC zwróci 401',
|
||||
'devOptions.triggerSentryTest': 'Wyzwól test Sentry (staging)',
|
||||
'devOptions.triggerSentryTestDesc':
|
||||
'Wysyła oznaczony błąd, aby zweryfikować potok Sentry. Issue #1072 — usuń po weryfikacji.',
|
||||
'devOptions.sendTestEvent': 'Wyślij zdarzenie testowe',
|
||||
'devOptions.sending': 'Wysyłanie…',
|
||||
'devOptions.eventSent': 'Zdarzenie wysłane',
|
||||
'devOptions.failed': 'Niepowodzenie',
|
||||
'devOptions.appLogs': 'Dzienniki aplikacji',
|
||||
'devOptions.appLogsDesc':
|
||||
'Otwórz folder z rotacyjnymi dziennikami dziennymi. Dołącz najnowszy plik podczas zgłaszania błędu.',
|
||||
'devOptions.openLogsFolder': 'Otwórz folder dzienników',
|
||||
// mnemonic
|
||||
'mnemonic.phraseSaved': 'Fraza odzyskiwania zapisana',
|
||||
'mnemonic.walletReady': 'Wielołańcuchowe tożsamości portfela są gotowe. Powrót do ustawień...',
|
||||
'mnemonic.writeDownWords': 'Zapisz te',
|
||||
'mnemonic.wordsInOrder':
|
||||
'słów w kolejności i przechowuj je w bezpiecznym miejscu. Ta fraza zabezpiecza Twój lokalny klucz szyfrowania oraz tożsamości portfeli EVM, BTC, Solana i Tron.',
|
||||
'mnemonic.cannotRecover':
|
||||
'Tej frazy nie da się odzyskać, jeśli ją utracisz, i powinna pozostać wyłącznie lokalna na Twoim urządzeniu.',
|
||||
'mnemonic.copyToClipboard': 'Skopiuj do schowka',
|
||||
'mnemonic.alreadyHavePhrase': 'Mam już frazę odzyskiwania',
|
||||
'mnemonic.consentSaved':
|
||||
'Zapisałem(am) tę frazę i wyrażam zgodę na jej użycie do konfiguracji lokalnego portfela',
|
||||
'mnemonic.enterPhraseToRestore':
|
||||
'Wprowadź swoją frazę odzyskiwania poniżej, aby przywrócić lokalne tożsamości portfela, lub wklej pełną frazę w dowolne pole (12 słów dla nowych kopii zapasowych; 24-słowne frazy ze starszych wersji nadal działają).',
|
||||
'mnemonic.words': 'Słowa',
|
||||
'mnemonic.validPhrase': 'Prawidłowa fraza odzyskiwania',
|
||||
'mnemonic.generateNewPhrase': 'Wygeneruj zamiast tego nową frazę odzyskiwania',
|
||||
'mnemonic.securingData': 'Zabezpieczanie Twoich danych...',
|
||||
'mnemonic.saveRecoveryPhrase': 'Zapisz frazę odzyskiwania',
|
||||
'mnemonic.userNotLoaded': 'Użytkownik nie wczytany. Zaloguj się ponownie lub odśwież stronę.',
|
||||
'mnemonic.invalidPhrase': 'Nieprawidłowa fraza odzyskiwania. Sprawdź słowa i spróbuj ponownie.',
|
||||
'mnemonic.somethingWentWrong': 'Coś poszło nie tak. Spróbuj ponownie.',
|
||||
// team
|
||||
'team.failedToCreate': 'Nie udało się utworzyć zespołu',
|
||||
'team.invalidInviteCode': 'Nieprawidłowy lub wygasły kod zaproszenia',
|
||||
'team.failedToSwitch': 'Nie udało się przełączyć zespołu',
|
||||
'team.failedToLeave': 'Nie udało się opuścić zespołu',
|
||||
'team.role.owner': 'Właściciel',
|
||||
'team.role.admin': 'Administrator',
|
||||
'team.role.billingManager': 'Menedżer rozliczeń',
|
||||
'team.role.member': 'Członek',
|
||||
'team.active': 'Aktywny',
|
||||
'team.personalTeam': 'Zespół osobisty',
|
||||
'team.manageTeam': 'Zarządzaj zespołem',
|
||||
'team.switching': 'Przełączanie...',
|
||||
'team.switch': 'Przełącz',
|
||||
'team.leaving': 'Opuszczanie...',
|
||||
'team.leave': 'Opuść',
|
||||
'team.yourTeams': 'Twoje zespoły',
|
||||
'team.createNewTeam': 'Utwórz nowy zespół',
|
||||
'team.teamName': 'Nazwa zespołu',
|
||||
'team.creating': 'Tworzenie...',
|
||||
'team.joinExistingTeam': 'Dołącz do istniejącego zespołu',
|
||||
'team.inviteCode': 'Kod zaproszenia',
|
||||
'team.joining': 'Dołączanie...',
|
||||
'team.join': 'Dołącz',
|
||||
'team.leaveTeam': 'Opuść zespół',
|
||||
'team.confirmLeave': 'Czy na pewno chcesz opuścić',
|
||||
'team.leaveWarning':
|
||||
'Stracisz dostęp do zespołu i wszystkich jego zasobów. Aby wrócić, będziesz potrzebować nowego zaproszenia.',
|
||||
'team.management': 'Zarządzanie zespołem',
|
||||
'team.notFound': 'Nie znaleziono zespołu',
|
||||
'team.accessDenied': 'Brak dostępu',
|
||||
'team.members': 'Członkowie',
|
||||
// voice
|
||||
'voice.title': 'Dyktowanie głosowe',
|
||||
'voice.settings': 'Ustawienia głosu',
|
||||
'voice.settingsDesc': 'Przytrzymaj skrót, aby dyktować i wstawiać tekst do aktywnego pola.',
|
||||
'voice.hotkey': 'Skrót klawiszowy',
|
||||
'voice.activationMode': 'Tryb aktywacji',
|
||||
'voice.tapToToggle': 'Dotknij, aby przełączyć',
|
||||
'voice.writingStyle': 'Styl pisania',
|
||||
'voice.verbatimTranscription': 'Transkrypcja dosłowna',
|
||||
'voice.naturalCleanup': 'Naturalne porządkowanie',
|
||||
'voice.autoStart': 'Uruchamiaj serwer głosowy automatycznie z rdzeniem',
|
||||
'voice.customDictionary': 'Słownik użytkownika',
|
||||
'voice.customDictionaryDesc':
|
||||
'Dodaj nazwy, terminy techniczne i słowa branżowe, aby poprawić dokładność rozpoznawania.',
|
||||
'voice.addWord': 'Dodaj słowo...',
|
||||
'voice.sttDisabled':
|
||||
'Dyktowanie głosowe jest wyłączone do czasu pobrania i przygotowania lokalnego modelu STT.',
|
||||
'voice.openLocalAiModel': 'Otwórz lokalny model AI',
|
||||
'voice.serverRestarted': 'Serwer głosowy uruchomiony ponownie z nowymi ustawieniami.',
|
||||
'voice.settingsSaved': 'Ustawienia głosu zapisane.',
|
||||
'voice.serverStarted': 'Serwer głosowy uruchomiony.',
|
||||
'voice.serverStopped': 'Serwer głosowy zatrzymany.',
|
||||
'voice.saveVoiceSettings': 'Zapisz ustawienia głosu',
|
||||
'voice.startVoiceServer': 'Uruchom serwer głosowy',
|
||||
'voice.stopVoiceServer': 'Zatrzymaj serwer głosowy',
|
||||
'voice.debugTitle': 'Debug głosu',
|
||||
// autocomplete
|
||||
'autocomplete.title': 'Autouzupełnianie',
|
||||
'autocomplete.settings': 'Ustawienia',
|
||||
'autocomplete.acceptWithTab': 'Akceptuj Tabem',
|
||||
'autocomplete.stylePreset': 'Styl',
|
||||
'autocomplete.style.balanced': 'Zrównoważony',
|
||||
'autocomplete.style.concise': 'Zwięzły',
|
||||
'autocomplete.style.formal': 'Formalny',
|
||||
'autocomplete.style.casual': 'Swobodny',
|
||||
'autocomplete.style.custom': 'Własny',
|
||||
'autocomplete.disabledApps':
|
||||
'Wyłączone aplikacje (jeden identyfikator pakietu/aplikacji w wierszu)',
|
||||
'autocomplete.saveSettings': 'Zapisz ustawienia',
|
||||
'autocomplete.saving': 'Zapisywanie…',
|
||||
'autocomplete.runtime': 'Środowisko',
|
||||
'autocomplete.running': 'Działa',
|
||||
'autocomplete.start': 'Uruchom',
|
||||
'autocomplete.stop': 'Zatrzymaj',
|
||||
'autocomplete.settingsSaved': 'Ustawienia autouzupełniania zapisane.',
|
||||
'autocomplete.started': 'Autouzupełnianie uruchomione.',
|
||||
'autocomplete.didNotStart': 'Autouzupełnianie nie wystartowało. Sprawdź, czy jest włączone.',
|
||||
'autocomplete.stopped': 'Autouzupełnianie zatrzymane.',
|
||||
'autocomplete.advancedSettings': 'Ustawienia zaawansowane',
|
||||
'autocomplete.debugTitle': 'Debug autouzupełniania',
|
||||
// chat (extras)
|
||||
'chat.agentChat': 'Czat z agentem',
|
||||
'chat.overrides': 'Nadpisania',
|
||||
'chat.model': 'Model',
|
||||
'chat.temperature': 'Temperatura',
|
||||
'chat.conversation': 'Rozmowa',
|
||||
'chat.startAgentConversation': 'Rozpocznij rozmowę z agentem.',
|
||||
'chat.you': 'Ty',
|
||||
'chat.agent': 'Agent',
|
||||
'chat.askAgent': 'Zapytaj agenta o cokolwiek...',
|
||||
'chat.sendMessage': 'Wyślij wiadomość',
|
||||
// composio
|
||||
'composio.triageTitle': 'Wyzwalacze integracji',
|
||||
'composio.triageDesc':
|
||||
'Gdy włączone, każdy przychodzący wyzwalacz Composio przechodzi przez krok klasyfikacji AI — jedna tura lokalnego LLM na wyzwalacz. Wyłącz globalnie lub dla wybranych integracji, jeśli wolisz ręczny przegląd. Jeśli zmienna środowiskowa',
|
||||
'composio.disableAllTriage': 'Wyłącz klasyfikację AI dla wszystkich wyzwalaczy',
|
||||
'composio.triggersStillRecorded':
|
||||
'Wyzwalacze są nadal zapisywane do historii — żadna tura LLM nie jest uruchamiana.',
|
||||
'composio.disableSpecificIntegrations': 'Wyłącz klasyfikację AI dla konkretnych integracji',
|
||||
'composio.settingsSaved': 'Ustawienia zapisane',
|
||||
'composio.saveFailed': 'Nie udało się zapisać. Spróbuj ponownie.',
|
||||
// cron
|
||||
'cron.title': 'Zadania cron',
|
||||
'cron.scheduledJobs': 'Zaplanowane zadania',
|
||||
'cron.manageCronJobs': 'Zarządzaj zadaniami cron z poziomu harmonogramu rdzenia.',
|
||||
'cron.refreshCronJobs': 'Odśwież zadania cron',
|
||||
// localModel
|
||||
'localModel.modelStatus': 'Stan modelu',
|
||||
'localModel.downloadModels': 'Pobierz modele',
|
||||
'localModel.usage': 'Użycie',
|
||||
'localModel.usageDesc':
|
||||
'Wybierz, które podsystemy korzystają z modelu lokalnego. Wszystko wyłączone używa chmury.',
|
||||
'localModel.enableRuntime': 'Włącz lokalne środowisko AI',
|
||||
'localModel.enableRuntimeDesc':
|
||||
'Główny przełącznik. Domyślnie wyłączony — Ollama pozostaje bezczynna. Gdy włączony, podsumowywanie drzewa, inteligencja ekranu i autouzupełnianie zawsze korzystają z modelu lokalnego.',
|
||||
'localModel.advancedSettings': 'Ustawienia zaawansowane',
|
||||
'localModel.debugTitle': 'Debug modelu lokalnego',
|
||||
'localModel.ollamaServer.helperText': 'Przykład: http://192.168.1.5:11434',
|
||||
'localModel.ollamaServer.label': 'Adres URL serwera Ollama',
|
||||
'localModel.ollamaServer.modelCount': 'modele',
|
||||
'localModel.ollamaServer.placeholder': 'http://localhost:11434',
|
||||
'localModel.ollamaServer.reachable': 'Dostępny',
|
||||
'localModel.ollamaServer.resetButton': 'Przywróć domyślne',
|
||||
'localModel.ollamaServer.saveButton': 'Zapisz',
|
||||
'localModel.ollamaServer.testButton': 'Testuj połączenie',
|
||||
'localModel.ollamaServer.unreachable': 'Niedostępny',
|
||||
'localModel.ollamaServer.validationError': 'Musi być poprawnym adresem http:// lub https://',
|
||||
// debug titles
|
||||
'screenAwareness.debugTitle': 'Debug świadomości ekranu',
|
||||
'memory.debugTitle': 'Debug pamięci',
|
||||
'webhooks.debugTitle': 'Debug webhooków',
|
||||
'notifications.routingTitle': 'Trasowanie powiadomień',
|
||||
// common (extras)
|
||||
'common.reload': 'Odśwież',
|
||||
'common.skip': 'Pomiń',
|
||||
'common.disable': 'Wyłącz',
|
||||
'common.enable': 'Włącz',
|
||||
// chat (more)
|
||||
'chat.safetyTimeout':
|
||||
'Brak odpowiedzi agenta po 2 minutach. Spróbuj ponownie lub sprawdź połączenie.',
|
||||
'chat.filter.all': 'Wszystkie',
|
||||
'chat.filter.work': 'Praca',
|
||||
'chat.filter.briefing': 'Briefing',
|
||||
'chat.filter.notification': 'Powiadomienia',
|
||||
'chat.filter.workers': 'Workery',
|
||||
'chat.selectThread': 'Wybierz wątek',
|
||||
'chat.threads': 'Wątki',
|
||||
'chat.noThreads': 'Brak wątków',
|
||||
'chat.noLabelThreads': 'Brak wątków „{label}”',
|
||||
'chat.noWorkerThreads': 'Brak wątków workerów',
|
||||
'chat.deleteThread': 'Usuń wątek',
|
||||
'chat.deleteThreadConfirm': 'Czy na pewno chcesz usunąć „{title}”?',
|
||||
'chat.untitledThread': 'Wątek bez tytułu',
|
||||
'chat.editThreadTitle': 'Edytuj tytuł wątku',
|
||||
'chat.hideSidebar': 'Ukryj panel boczny',
|
||||
'chat.showSidebar': 'Pokaż panel boczny',
|
||||
'chat.newThreadShortcut': 'Nowy wątek (/new)',
|
||||
'chat.new': 'Nowy',
|
||||
'chat.failedToLoadMessages': 'Nie udało się wczytać wiadomości',
|
||||
'chat.thinkingIteration': 'Myślę... ({n})',
|
||||
'chat.thinkingDots': 'Myślę...',
|
||||
'chat.approachingLimit': 'Zbliżasz się do limitu',
|
||||
'chat.approachingLimitMsg': 'Wykorzystano {pct}% dostępnego limitu.',
|
||||
'chat.upgrade': 'Podnieś plan',
|
||||
'chat.weeklyLimitHit': 'Wykorzystano przewidziany budżet cyklu.',
|
||||
'chat.resets': 'Reset',
|
||||
'chat.topUpToContinue': 'Doładuj, aby kontynuować.',
|
||||
'chat.budgetComplete': 'Twój budżet jest wyczerpany. Doładuj kredyty lub zmień plan.',
|
||||
'chat.topUp': 'Doładuj',
|
||||
'chat.cycle': 'Cykl',
|
||||
'chat.cycleSpent': 'Wydane w tym cyklu',
|
||||
'chat.cycleRemaining': 'Pozostało',
|
||||
'chat.left': 'pozostało',
|
||||
'chat.setup': 'Skonfiguruj',
|
||||
'chat.switchToText': 'Przełącz na tekst',
|
||||
'chat.transcribing': 'Transkrypcja...',
|
||||
'chat.stopAndSend': 'Zatrzymaj i wyślij',
|
||||
'chat.startTalking': 'Zacznij mówić',
|
||||
'chat.playingVoiceReply': 'Odtwarzanie odpowiedzi głosowej',
|
||||
'chat.voiceHint': 'Użyj mikrofonu, aby mówić',
|
||||
'chat.micUnavailable': 'Mikrofon niedostępny',
|
||||
'chat.turn': 'tura',
|
||||
'chat.turns': 'tury',
|
||||
'chat.openWorkerThread': 'Otwórz wątek workera',
|
||||
// memory
|
||||
'memory.searchAria': 'Szukaj w pamięci',
|
||||
'memory.searchPlaceholder': 'Szukaj wpisów pamięci...',
|
||||
'memory.sourceFilter.all': 'Wszystkie źródła',
|
||||
'memory.sourceFilter.email': 'E-mail',
|
||||
'memory.sourceFilter.calendar': 'Kalendarz',
|
||||
'memory.sourceFilter.telegram': 'Telegram',
|
||||
'memory.sourceFilter.aiInsight': 'Wniosek AI',
|
||||
'memory.sourceFilter.system': 'System',
|
||||
'memory.sourceFilter.trading': 'Handel',
|
||||
'memory.sourceFilter.security': 'Bezpieczeństwo',
|
||||
'memory.ingestionActivity': 'Aktywność pobierania',
|
||||
'memory.events': 'zdarzenia',
|
||||
'memory.event': 'zdarzenie',
|
||||
'memory.overTheLast': 'w ciągu ostatnich',
|
||||
'memory.months': 'miesięcy',
|
||||
'memory.peak': 'Szczyt',
|
||||
'memory.perDay': '/dzień',
|
||||
'memory.less': 'Mniej',
|
||||
'memory.more': 'Więcej',
|
||||
'memory.on': 'w',
|
||||
'memory.loading': 'Wczytywanie pamięci',
|
||||
'memory.fetching': 'Pobieranie wpisów pamięci...',
|
||||
'memory.analyzing': 'Analiza pamięci',
|
||||
'memory.analyzingHint': 'Przetwarzanie wspomnień w celu wydobycia wniosków...',
|
||||
'memory.noMatches': 'Brak dopasowań',
|
||||
'memory.noMatchesHint': 'Spróbuj zmienić wyszukiwane słowa lub filtry.',
|
||||
'memory.allCaughtUp': 'Wszystko nadrobione',
|
||||
'memory.allCaughtUpHint': 'Brak nowych wpisów do przetworzenia.',
|
||||
'memory.noAnalysis': 'Brak analizy',
|
||||
'memory.noAnalysisHint': 'Uruchom analizę, aby odkryć wzorce w swoich wspomnieniach.',
|
||||
'memory.emptyHint': 'Zacznij używać aplikacji, aby utworzyć pierwsze wspomnienia.',
|
||||
// mic
|
||||
'mic.unavailable': 'Mikrofon niedostępny',
|
||||
'mic.permissionDenied': 'Odmowa dostępu do mikrofonu',
|
||||
'mic.failedToStartRecorder': 'Nie udało się uruchomić rejestratora',
|
||||
'mic.transcribing': 'Transkrypcja...',
|
||||
'mic.tapToSend': 'Dotknij, aby wysłać',
|
||||
'mic.waitingForAgent': 'Czekam na agenta...',
|
||||
'mic.tapAndSpeak': 'Dotknij i mów',
|
||||
'mic.stopRecording': 'Zatrzymaj nagrywanie i wyślij',
|
||||
'mic.startRecording': 'Rozpocznij nagrywanie',
|
||||
'mic.deviceSelector': 'Urządzenie mikrofonowe',
|
||||
// token
|
||||
'token.usageLimitReached': 'Osiągnięto limit użycia',
|
||||
'token.approachingLimit': 'Zbliżasz się do limitu',
|
||||
'token.planClickForDetails': 'plan — kliknij, aby zobaczyć szczegóły',
|
||||
'token.sessionTokens': 'Wej: {in} | Wyj: {out} | Tury: {turns}',
|
||||
'token.limit': 'Limit osiągnięty',
|
||||
// catalog
|
||||
'catalog.noCapabilityBinding': 'Brak powiązanej możliwości',
|
||||
'catalog.downloadFailed': 'Pobieranie nie powiodło się',
|
||||
'catalog.active': 'Aktywny',
|
||||
'catalog.installed': 'Zainstalowany',
|
||||
'catalog.notDownloaded': 'Nie pobrany',
|
||||
'catalog.inUse': 'W użyciu',
|
||||
'catalog.use': 'Użyj',
|
||||
'catalog.deleteModel': 'Usuń model',
|
||||
'catalog.download': 'Pobierz',
|
||||
// navigator
|
||||
'navigator.recent': 'Ostatnie',
|
||||
'navigator.today': 'Dziś',
|
||||
'navigator.thisWeek': 'Ten tydzień',
|
||||
'navigator.sources': 'Źródła',
|
||||
'navigator.email': 'E-mail',
|
||||
'navigator.slack': 'Slack',
|
||||
'navigator.chat': 'Czat',
|
||||
'navigator.documents': 'Dokumenty',
|
||||
'navigator.people': 'Ludzie',
|
||||
'navigator.topics': 'Tematy',
|
||||
// dreams
|
||||
'dreams.description':
|
||||
'Sny to refleksje generowane przez AI, syntetyzujące wzorce z Twoich wspomnień.',
|
||||
'dreams.comingSoon': 'Wkrótce',
|
||||
// assignment
|
||||
'assignment.memoryLlm': 'LLM pamięci',
|
||||
'assignment.memoryLlmAria': 'Wybór LLM pamięci',
|
||||
'assignment.embedder': 'Embedder',
|
||||
'assignment.loaded': 'Wczytano',
|
||||
'assignment.notDownloaded': 'Nie pobrano',
|
||||
'assignment.usedForExtractSummarise': 'Używany do ekstrakcji i podsumowywania',
|
||||
// insights
|
||||
'insights.knownFacts': 'Znane fakty',
|
||||
'insights.preferences': 'Preferencje',
|
||||
'insights.relationships': 'Relacje',
|
||||
'insights.skills': 'Umiejętności',
|
||||
'insights.opinions': 'Opinie',
|
||||
// devOptions menu (#2225)
|
||||
'devOptions.menuAi': 'Konfiguracja AI',
|
||||
'devOptions.menuAiDesc': 'Dostawcy chmurowi, lokalne modele Ollama i trasowanie per workload',
|
||||
'devOptions.menuScreenAware': 'Świadomość ekranu',
|
||||
'devOptions.menuScreenAwareDesc':
|
||||
'Uprawnienia do przechwytywania ekranu, polityka monitorowania i kontrola sesji',
|
||||
'devOptions.menuMessaging': 'Kanały komunikacji',
|
||||
'devOptions.menuMessagingDesc':
|
||||
'Konfiguruj tryby uwierzytelniania Telegram/Discord i domyślne trasowanie',
|
||||
'devOptions.menuTools': 'Narzędzia',
|
||||
'devOptions.menuToolsDesc':
|
||||
'Włącz lub wyłącz możliwości, z których OpenHuman może korzystać w Twoim imieniu',
|
||||
'devOptions.menuAgentChat': 'Czat z agentem',
|
||||
'devOptions.menuAgentChatDesc': 'Testuj rozmowę z agentem z nadpisaniem modelu i temperatury',
|
||||
'devOptions.menuCronJobs': 'Zadania cron',
|
||||
'devOptions.menuCronJobsDesc':
|
||||
'Przeglądaj i konfiguruj zaplanowane zadania dla umiejętności runtime',
|
||||
'devOptions.menuLocalModelDebug': 'Debug modelu lokalnego',
|
||||
'devOptions.menuLocalModelDebugDesc':
|
||||
'Konfiguracja Ollama, pobieranie zasobów, testy modeli i diagnostyka',
|
||||
'devOptions.menuWebhooksDebug': 'Webhooks',
|
||||
'devOptions.menuWebhooksDebugDesc':
|
||||
'Sprawdź rejestracje webhooków w runtime i logi przechwyconych żądań',
|
||||
'devOptions.menuIntelligence': 'Inteligencja',
|
||||
'devOptions.menuIntelligenceDesc': 'Przestrzeń pamięci, silnik podświadomości, sny i ustawienia',
|
||||
'devOptions.menuNotificationRouting': 'Trasowanie powiadomień',
|
||||
'devOptions.menuNotificationRoutingDesc':
|
||||
'Punktacja ważności AI i eskalacja przez orkiestrator dla alertów integracji',
|
||||
'devOptions.menuComposeIOTriggers': 'Wyzwalacze ComposeIO',
|
||||
'devOptions.menuComposeIOTriggersDesc': 'Przeglądaj historię i archiwum wyzwalaczy ComposeIO',
|
||||
'devOptions.menuComposioRouting': 'Trasowanie Composio (tryb bezpośredni)',
|
||||
'devOptions.menuComposioRoutingDesc':
|
||||
'Użyj własnego klucza API Composio i kieruj wywołania bezpośrednio do backend.composio.dev',
|
||||
'devOptions.menuComposioTriggers': 'Wyzwalacze integracji',
|
||||
'devOptions.menuComposioTriggersDesc':
|
||||
'Konfiguruj ustawienia klasyfikacji AI dla wyzwalaczy integracji Composio',
|
||||
};
|
||||
|
||||
export default pl2;
|
||||
@@ -0,0 +1,493 @@
|
||||
import type { TranslationMap } from '../types';
|
||||
import en3 from './en-3';
|
||||
|
||||
// Polish chunk 3/5. Spreads the English source-of-truth chunk so every key is
|
||||
// present (i18n parity gate); Polish values below override EN where translated.
|
||||
const pl3: TranslationMap = {
|
||||
...en3,
|
||||
// insights
|
||||
'insights.other': 'Inne',
|
||||
'insights.title': 'Wnioski',
|
||||
'insights.empty': 'Brak wniosków. Wnioski są generowane wraz ze wzrostem pamięci.',
|
||||
'insights.description': 'Na podstawie {count} relacji w Twoim grafie pamięci.',
|
||||
'insights.items': 'elementów',
|
||||
'insights.more': 'więcej',
|
||||
// calls
|
||||
'calls.joiningCall': 'Dołączanie do rozmowy',
|
||||
'calls.meetWindowOpening': 'Otwieranie okna Meet...',
|
||||
'calls.failedToStart': 'Nie udało się uruchomić rozmowy Meet',
|
||||
'calls.couldNotStart': 'Nie można rozpocząć rozmowy',
|
||||
'calls.failedToClose': 'Nie udało się zakończyć rozmowy',
|
||||
'calls.couldNotClose': 'Nie można zamknąć rozmowy',
|
||||
'calls.joinMeet': 'Dołącz do rozmowy Google Meet',
|
||||
'calls.joinMeetDescription': 'Wprowadź link Google Meet, aby dołączyć.',
|
||||
'calls.meetLink': 'Link Meet',
|
||||
'calls.displayName': 'Wyświetlana nazwa',
|
||||
'calls.openingMeet': 'Otwieranie Meet...',
|
||||
'calls.joinCall': 'Dołącz do rozmowy',
|
||||
'calls.activeCalls': 'Aktywne rozmowy',
|
||||
'calls.leave': 'Opuść',
|
||||
// workspace
|
||||
'workspace.wipeConfirm':
|
||||
'Czy na pewno chcesz wyczyścić całą pamięć? Tej operacji nie można cofnąć.',
|
||||
'workspace.resetTreeConfirm': 'Czy na pewno chcesz przebudować drzewo pamięci?',
|
||||
'workspace.wipeTitle': 'Wyczyść pamięć',
|
||||
'workspace.resetting': 'Resetowanie...',
|
||||
'workspace.resetMemory': 'Zresetuj pamięć',
|
||||
'workspace.resetTreeTitle': 'Przebuduj drzewo pamięci',
|
||||
'workspace.rebuilding': 'Przebudowa...',
|
||||
'workspace.resetMemoryTree': 'Zresetuj drzewo pamięci',
|
||||
'workspace.building': 'Budowanie...',
|
||||
'workspace.buildSummaryTrees': 'Zbuduj drzewa podsumowań',
|
||||
'workspace.viewVault': 'Pokaż sejf',
|
||||
'workspace.openingVaultTitle': 'Otwieranie sejfu w Obsidianie',
|
||||
'workspace.openingVaultMessage':
|
||||
'Jeśli Obsidian się nie otworzy, zainstaluj go z obsidian.md lub użyj „Pokaż folder”. Ścieżka sejfu:',
|
||||
'workspace.openVaultFailedTitle': 'Nie udało się otworzyć sejfu w Obsidianie',
|
||||
'workspace.openVaultFailedMessage':
|
||||
'Użyj „Pokaż folder”, aby otworzyć katalog sejfu bezpośrednio. Ścieżka sejfu:',
|
||||
'workspace.revealVaultFailed': 'Nie udało się pokazać folderu sejfu',
|
||||
'workspace.revealFolder': 'Pokaż folder',
|
||||
'workspace.checkingVault': 'Sprawdzanie…',
|
||||
'workspace.vaultNotRegisteredHelp':
|
||||
'Obsidian otwiera tylko foldery dodane jako sejf. W Obsidianie wybierz „Otwórz folder jako sejf” i wskaż folder poniżej — wystarczy to zrobić raz. Następnie ponownie kliknij Pokaż sejf.',
|
||||
'workspace.obsidianNotFoundHelp':
|
||||
'Nie znaleziono Obsidiana na tym urządzeniu. Zainstaluj go lub — jeśli jest zainstalowany w niestandardowym miejscu — ustaw jego folder konfiguracyjny w sekcji Zaawansowane.',
|
||||
'workspace.openAnyway': 'Otwórz w Obsidianie mimo to',
|
||||
'workspace.installObsidian': 'Zainstaluj Obsidiana',
|
||||
'workspace.obsidianAdvanced': 'Obsidian zainstalowany gdzie indziej?',
|
||||
'workspace.obsidianConfigDirLabel': 'Folder konfiguracji Obsidiana',
|
||||
'workspace.obsidianConfigDirHint':
|
||||
'Ścieżka do folderu zawierającego obsidian.json (np. ~/.config/obsidian). Zostaw puste, aby wykryć automatycznie.',
|
||||
'workspace.obsidianConfigDirPlaceholder': '~/.config/obsidian',
|
||||
'workspace.graphLoadFailed': 'Nie udało się wczytać grafu pamięci',
|
||||
'workspace.loadingGraph': 'Wczytywanie grafu pamięci...',
|
||||
'workspace.graphViewMode': 'Tryb widoku grafu pamięci',
|
||||
'workspace.trees': 'Drzewa',
|
||||
'workspace.contacts': 'Kontakty',
|
||||
// graph
|
||||
'graph.noContactMentions': 'Brak wzmianek o kontakcie',
|
||||
'graph.noMemory': 'Brak pamięci',
|
||||
'graph.source': 'Źródło',
|
||||
'graph.topic': 'Temat',
|
||||
'graph.global': 'Globalne',
|
||||
'graph.document': 'Dokument',
|
||||
'graph.contact': 'Kontakt',
|
||||
'graph.nodes': 'węzły',
|
||||
'graph.parentChild': 'rodzic-dziecko',
|
||||
'graph.documentContact': 'dokument-kontakt',
|
||||
'graph.link': 'powiązanie',
|
||||
'graph.links': 'powiązania',
|
||||
'graph.children': 'dzieci',
|
||||
'graph.clickToOpenObsidian': 'Kliknij, aby otworzyć w Obsidianie',
|
||||
'graph.person': 'Osoba',
|
||||
// modal
|
||||
'modal.dontShowAgain': 'Nie pokazuj podobnych sugestii',
|
||||
// reflections
|
||||
'reflections.loading': 'Wczytywanie refleksji...',
|
||||
'reflections.empty': 'Brak refleksji',
|
||||
'reflections.title': 'Refleksje',
|
||||
'reflections.proposedAction': 'Proponowane działanie',
|
||||
'reflections.act': 'Wykonaj',
|
||||
'reflections.dismiss': 'Odrzuć',
|
||||
// whatsapp
|
||||
'whatsapp.chatsSynced': 'rozmów zsynchronizowano',
|
||||
'whatsapp.chatSynced': 'rozmowa zsynchronizowana',
|
||||
// sync
|
||||
'sync.active': 'Aktywna',
|
||||
'sync.recent': 'Ostatnia',
|
||||
'sync.idle': 'Bezczynna',
|
||||
'sync.memorySources': 'Źródła pamięci',
|
||||
'sync.noConnectedSources': 'Brak połączonych źródeł',
|
||||
'sync.chunks': 'fragmentów',
|
||||
'sync.lastChunk': 'Ostatni fragment:',
|
||||
'sync.pending': 'oczekujące',
|
||||
'sync.processed': 'przetworzone',
|
||||
'sync.syncing': 'Synchronizacja…',
|
||||
'sync.sync': 'Synchronizuj',
|
||||
'sync.failedToLoad': 'Nie udało się wczytać stanu synchronizacji',
|
||||
'sync.noContent':
|
||||
'Żadna treść nie została jeszcze zsynchronizowana do pamięci. Podłącz integrację, aby zacząć.',
|
||||
// backend
|
||||
'backend.aiBackend': 'Backend AI',
|
||||
'backend.cloud': 'Chmura',
|
||||
'backend.recommended': 'Zalecane',
|
||||
'backend.cloudDescription':
|
||||
'Szybkie, mocne modele kierowane przez backend OpenHuman. Gotowe do użycia od razu.',
|
||||
'backend.privacyNote':
|
||||
'Prompty i wybrany kontekst mogą być wysyłane do skonfigurowanego backendu/dostawcy. Użyj trybu lokalnego dla obsługiwanych workloadów na urządzeniu.',
|
||||
'backend.local': 'Lokalny',
|
||||
'backend.advanced': 'Zaawansowane',
|
||||
'backend.localDescription':
|
||||
'Uruchom modele na własnej maszynie z Ollamą. Pełna prywatność, wymaga konfiguracji.',
|
||||
'backend.ramRecommended': 'Zalecane 16 GB+ RAM',
|
||||
// subconscious
|
||||
'subconscious.tasks': 'zadań',
|
||||
'subconscious.ticks': 'tików',
|
||||
'subconscious.last': 'Ostatnio',
|
||||
'subconscious.failed': 'nieudane',
|
||||
'subconscious.tickInterval': 'Interwał tików',
|
||||
'subconscious.runNow': 'Uruchom teraz',
|
||||
'subconscious.providerUnavailableTitle': 'Podświadomość wstrzymana',
|
||||
'subconscious.providerSettings': 'Ustawienia AI',
|
||||
'subconscious.approvalNeeded': 'Wymagana zgoda',
|
||||
'subconscious.requiresApproval': 'Wymaga zgody',
|
||||
'subconscious.fixInConnections': 'Napraw w Połączeniach',
|
||||
'subconscious.goAhead': 'Działaj',
|
||||
'subconscious.activeTasks': 'Aktywne zadania',
|
||||
'subconscious.noActiveTasks': 'Brak aktywnych zadań',
|
||||
'subconscious.default': 'Domyślne',
|
||||
'subconscious.addTaskPlaceholder': 'Dodaj nowe zadanie...',
|
||||
'subconscious.activityLog': 'Dziennik aktywności',
|
||||
'subconscious.noActivity': 'Brak aktywności',
|
||||
'subconscious.decision.nothingNew': 'Nic nowego',
|
||||
'subconscious.decision.completed': 'Ukończone',
|
||||
'subconscious.decision.evaluating': 'Ocena',
|
||||
'subconscious.decision.waitingApproval': 'Oczekiwanie na zgodę',
|
||||
'subconscious.decision.failed': 'Niepowodzenie',
|
||||
'subconscious.decision.cancelled': 'Anulowane',
|
||||
'subconscious.decision.skipped': 'Pominięte',
|
||||
// actionable
|
||||
'actionable.complete': 'Zakończ',
|
||||
'actionable.dismiss': 'Odrzuć',
|
||||
'actionable.snooze': 'Odłóż',
|
||||
'actionable.new': 'Nowe',
|
||||
// stats
|
||||
'stats.storage': 'Pamięć',
|
||||
'stats.files': 'plików',
|
||||
'stats.documents': 'Dokumenty',
|
||||
'stats.today': 'dziś',
|
||||
'stats.namespaces': 'Przestrzenie nazw',
|
||||
'stats.relations': 'Relacje',
|
||||
'stats.firstMemory': 'Pierwsze wspomnienie',
|
||||
'stats.latest': 'Ostatnie',
|
||||
'stats.sessions': 'Sesje',
|
||||
'stats.tokens': 'tokenów',
|
||||
// bootCheck
|
||||
'bootCheck.invalidUrl': 'Wprowadź adres URL środowiska.',
|
||||
'bootCheck.urlMustStartWith': 'Adres musi zaczynać się od http:// lub https://',
|
||||
'bootCheck.validUrlRequired':
|
||||
'To nie wygląda na prawidłowy adres URL (spróbuj https://core.example.com/rpc)',
|
||||
'bootCheck.tokenRequired': 'Aby się połączyć, potrzebujemy tokenu uwierzytelniania.',
|
||||
'bootCheck.chooseCoreMode': 'Wybierz środowisko',
|
||||
'bootCheck.connectToCore': 'Połącz się ze swoim środowiskiem',
|
||||
'bootCheck.desktopDescription':
|
||||
'OpenHuman potrzebuje środowiska do działania. Wybierz, gdzie ma się znajdować.',
|
||||
'bootCheck.webDescription':
|
||||
'W przeglądarce OpenHuman łączy się ze środowiskiem, którym zarządzasz. Wpisz jego URL i token poniżej lub pobierz aplikację desktopową, aby uruchomić środowisko bezpośrednio na komputerze.',
|
||||
'bootCheck.preferDesktop': 'Wolisz wszystko trzymać na własnym urządzeniu?',
|
||||
'bootCheck.downloadDesktop': 'Pobierz aplikację desktopową',
|
||||
'bootCheck.localRecommended': 'Uruchom lokalnie (zalecane)',
|
||||
'bootCheck.localDescription':
|
||||
'Działa bezpośrednio na Twoim komputerze. Najszybsze, w pełni prywatne, bez konfiguracji.',
|
||||
'bootCheck.cloudMode': 'Uruchom w chmurze (zaawansowane)',
|
||||
'bootCheck.cloudDescription':
|
||||
'Połącz się ze środowiskiem hostowanym w innym miejscu. Działa 24×7, więc nie musisz trzymać tego urządzenia włączonego.',
|
||||
'bootCheck.coreRpcUrl': 'URL środowiska',
|
||||
'bootCheck.rpcUrlPlaceholder': 'https://core.example.com/rpc',
|
||||
'bootCheck.authToken': 'Token uwierzytelniania',
|
||||
'bootCheck.bearerTokenPlaceholder': 'Token bearer ze zdalnego środowiska',
|
||||
'bootCheck.storedLocally': 'Przechowywany wyłącznie na tym urządzeniu. Wysyłany jako ',
|
||||
'bootCheck.testing': 'Testowanie…',
|
||||
'bootCheck.testConnection': 'Testuj połączenie',
|
||||
'bootCheck.connectedOk': 'Połączono. Możesz działać.',
|
||||
'bootCheck.authFailed': 'Ten token nie zadziałał. Sprawdź go i spróbuj ponownie.',
|
||||
'bootCheck.unreachablePrefix': 'Nie udało się połączyć:',
|
||||
'bootCheck.checkingCore': 'Budzenie środowiska…',
|
||||
'bootCheck.cannotReach': 'Nie można połączyć się ze środowiskiem',
|
||||
'bootCheck.cannotReachDesc': 'Nie udało się połączyć z Twoim środowiskiem. Spróbować innego?',
|
||||
'bootCheck.switchMode': 'Wybierz inne środowisko',
|
||||
'bootCheck.quit': 'Zakończ',
|
||||
'bootCheck.legacyDetected': 'Wykryto starsze środowisko w tle',
|
||||
'bootCheck.legacyDescription':
|
||||
'Osobno zainstalowany daemon OpenHuman już działa na tym urządzeniu. Musimy go usunąć, zanim wbudowane środowisko przejmie kontrolę.',
|
||||
'bootCheck.removing': 'Usuwanie…',
|
||||
'bootCheck.removeContinue': 'Usuń i kontynuuj',
|
||||
'bootCheck.localNeedsRestart': 'Lokalne środowisko wymaga restartu',
|
||||
'bootCheck.localNeedsRestartDesc':
|
||||
'Twoje lokalne środowisko jest w innej wersji niż ta aplikacja. Szybki restart przywróci zgodność.',
|
||||
'bootCheck.restarting': 'Restartowanie…',
|
||||
'bootCheck.restartCore': 'Zrestartuj środowisko',
|
||||
'bootCheck.cloudNeedsUpdate': 'Środowisko chmurowe wymaga aktualizacji',
|
||||
'bootCheck.cloudNeedsUpdateDesc':
|
||||
'Twoje środowisko chmurowe jest w innej wersji niż ta aplikacja. Uruchom aktualizację, aby przywrócić zgodność.',
|
||||
'bootCheck.updating': 'Aktualizowanie…',
|
||||
'bootCheck.updateCloudCore': 'Zaktualizuj środowisko chmurowe',
|
||||
'bootCheck.versionCheckFailed': 'Sprawdzenie wersji środowiska nie powiodło się',
|
||||
'bootCheck.versionCheckFailedDesc':
|
||||
'Środowisko działa, ale nie raportuje wersji. Może być nieaktualne. Zrestartuj lub zaktualizuj, aby kontynuować.',
|
||||
'bootCheck.working': 'Pracuję…',
|
||||
'bootCheck.restartUpdateCore': 'Zrestartuj / zaktualizuj środowisko',
|
||||
'bootCheck.unexpectedError': 'Nieoczekiwany błąd sprawdzania uruchamiania',
|
||||
'bootCheck.actionFailed': 'Coś poszło nie tak. Spróbuj ponownie.',
|
||||
'bootCheck.portConflictTitle': 'Nie udało się uruchomić silnika aplikacji',
|
||||
'bootCheck.portConflictBody':
|
||||
'Inny proces używa portu sieciowego potrzebnego OpenHumanowi. Spróbujemy to naprawić automatycznie.',
|
||||
'bootCheck.portConflictFixButton': 'Napraw automatycznie',
|
||||
'bootCheck.portConflictFixing': 'Naprawianie…',
|
||||
'bootCheck.portConflictFixFailed':
|
||||
'Automatyczna naprawa się nie powiodła. Zrestartuj komputer i spróbuj ponownie.',
|
||||
// notifications
|
||||
'notifications.justNow': 'przed chwilą',
|
||||
'notifications.minAgo': '{n} min temu',
|
||||
'notifications.hrAgo': '{n} godz. temu',
|
||||
'notifications.dayAgo': '{n} dni temu',
|
||||
'notifications.category.messages': 'Wiadomości',
|
||||
'notifications.category.agents': 'Agenci',
|
||||
'notifications.category.skills': 'Umiejętności',
|
||||
'notifications.category.system': 'System',
|
||||
'notifications.category.meetings': 'Spotkania',
|
||||
'notifications.category.reminders': 'Przypomnienia',
|
||||
'notifications.category.important': 'Ważne',
|
||||
// about.update
|
||||
'about.update.status.checking': 'Sprawdzanie...',
|
||||
'about.update.status.available': 'Dostępna wersja {version}',
|
||||
'about.update.status.availableNoVersion': 'Dostępna aktualizacja',
|
||||
'about.update.status.downloading': 'Pobieranie...',
|
||||
'about.update.status.readyToInstall': 'Wersja {version} gotowa do instalacji',
|
||||
'about.update.status.readyToInstallNoVersion':
|
||||
'Nowa wersja została pobrana i jest gotowa. Zrestartuj, aby zastosować.',
|
||||
'about.update.status.installing': 'Instalowanie...',
|
||||
'about.update.status.restarting': 'Restartowanie...',
|
||||
'about.update.status.upToDate': 'Używasz najnowszej wersji.',
|
||||
'about.update.status.error': 'Sprawdzenie aktualizacji nie powiodło się',
|
||||
'about.update.status.default': 'Sprawdź aktualizacje',
|
||||
// welcome
|
||||
'welcome.connectionFailed': 'Połączenie nie powiodło się: {status} {statusText}',
|
||||
'welcome.connectionFailedMsg': 'Połączenie nie powiodło się: {message}',
|
||||
'welcome.continueLocally': 'Kontynuuj lokalnie',
|
||||
'welcome.continueLocallyExperimental': 'Kontynuuj lokalnie (eksperymentalnie)',
|
||||
'welcome.localSessionStarting': 'Rozpoczynanie sesji lokalnej...',
|
||||
'welcome.localSessionDesc':
|
||||
'Używa lokalnego profilu offline i pomija logowanie OAuth TinyHumans.',
|
||||
// chat (extras)
|
||||
'chat.agentChatDesc': 'Otwórz bezpośrednią sesję czatu z agentem.',
|
||||
'channels.activeRouteValue': '{channel} przez {authMode}',
|
||||
// privacy
|
||||
'privacy.dataKind.messages': 'Wiadomości',
|
||||
'privacy.dataKind.agents': 'Agenci',
|
||||
'privacy.dataKind.skills': 'Umiejętności',
|
||||
'privacy.dataKind.system': 'System',
|
||||
'privacy.dataKind.meetings': 'Spotkania',
|
||||
'privacy.dataKind.reminders': 'Przypomnienia',
|
||||
'privacy.dataKind.important': 'Ważne',
|
||||
// onboarding
|
||||
'onboarding.enableLocalAI': 'Włącz lokalne AI',
|
||||
'onboarding.skills.status.available': 'Dostępne',
|
||||
'onboarding.skills.status.connected': 'Połączone',
|
||||
'onboarding.skills.status.connecting': 'Łączenie',
|
||||
'onboarding.skills.status.error': 'Błąd',
|
||||
'onboarding.skills.status.unavailable': 'Niedostępne',
|
||||
// composio
|
||||
'composio.statusUnavailable': 'Status niedostępny',
|
||||
'composio.envVarOverrides': 'jest ustawiona, nadpisuje to ustawienie.',
|
||||
// memory.day
|
||||
'memory.day.sun': 'nd.',
|
||||
'memory.day.mon': 'pn.',
|
||||
'memory.day.tue': 'wt.',
|
||||
'memory.day.wed': 'śr.',
|
||||
'memory.day.thu': 'cz.',
|
||||
'memory.day.fri': 'pt.',
|
||||
'memory.day.sat': 'sb.',
|
||||
'memory.ingesting': 'Pobieranie',
|
||||
'memory.ingestionQueued': 'W kolejce',
|
||||
'memory.ingestingTitle': 'Pobieranie {title}',
|
||||
// mic (extras)
|
||||
'mic.noAudioCaptured': 'Nie nagrano dźwięku',
|
||||
'mic.noSpeechDetected': 'Nie wykryto mowy',
|
||||
'mic.failedToStopRecording': 'Nie udało się zatrzymać nagrywania: {message}',
|
||||
'mic.transcriptionFailed': 'Transkrypcja nie powiodła się: {message}',
|
||||
// reflections.kind
|
||||
'reflections.kind.retrospective': 'Retrospektywa',
|
||||
'reflections.kind.derivedFact': 'Wywiedziony fakt',
|
||||
'reflections.kind.moodInsight': 'Wnioski o nastroju',
|
||||
'reflections.kind.relationshipInsight': 'Wnioski o relacjach',
|
||||
// graph.tooltip
|
||||
'graph.tooltip.summary': 'Podsumowanie',
|
||||
'graph.tooltip.contact': 'Kontakt',
|
||||
// localModel.usage
|
||||
'localModel.usage.never': 'Nigdy',
|
||||
'localModel.usage.mediumLoad': 'Średnie obciążenie',
|
||||
'localModel.usage.lowLoad': 'Niskie obciążenie',
|
||||
'localModel.usage.idleMode': 'Tryb bezczynności',
|
||||
'localModel.rebootstrapComplete': 'Ponowna inicjalizacja modelu zakończona.',
|
||||
'localModel.modelsVerified': 'Modele lokalne zweryfikowane.',
|
||||
// accounts
|
||||
'accounts.addModal.allConnected': 'Wszystkie połączone',
|
||||
'accounts.addModal.title': 'Dodaj konto',
|
||||
'accounts.respondQueue.empty': 'Pusto',
|
||||
'accounts.respondQueue.hide': 'Ukryj kolejkę odpowiedzi',
|
||||
'accounts.respondQueue.loadFailed': 'Nie udało się wczytać kolejki odpowiedzi',
|
||||
'accounts.respondQueue.loading': 'Wczytywanie kolejki…',
|
||||
'accounts.respondQueue.pending': 'Oczekujące',
|
||||
'accounts.respondQueue.show': 'Pokaż kolejkę odpowiedzi',
|
||||
'accounts.respondQueue.title': 'Kolejka odpowiedzi',
|
||||
'accounts.webviewHost.almostReady': 'Już prawie gotowe...',
|
||||
'accounts.webviewHost.loadTimeout': 'Limit czasu wczytywania webview',
|
||||
'accounts.webviewHost.loading': 'Wczytywanie {providerName}...',
|
||||
'accounts.webviewHost.loadingAccount': 'Wczytywanie konta',
|
||||
'accounts.webviewHost.restoringSession': 'Przywracanie sesji...',
|
||||
'accounts.webviewHost.retryLoading': 'Ponów wczytywanie',
|
||||
'accounts.webviewHost.takingLonger': '{providerName} trwa dłużej niż oczekiwano.',
|
||||
'accounts.webviewHost.timeoutHint': 'Wskazówka dot. limitu czasu',
|
||||
// app
|
||||
'app.connectionBadge.composio': 'Composio',
|
||||
'app.connectionBadge.messaging': 'Wiadomości',
|
||||
'app.connectionIndicator.connected': 'Połączono z OpenHuman AI 🚀',
|
||||
'app.connectionIndicator.connecting': 'Łączenie',
|
||||
'app.connectionIndicator.coreOffline': 'Rdzeń offline',
|
||||
'app.connectionIndicator.disconnected': 'Rozłączono',
|
||||
'app.connectionIndicator.offline': 'Offline',
|
||||
'app.connectionIndicator.reconnecting': 'Ponowne łączenie…',
|
||||
'app.errorFallback.componentStack': 'Stos komponentów',
|
||||
'app.errorFallback.downloadLatest': 'Pobierz najnowszą wersję',
|
||||
'app.errorFallback.heading': 'Coś poszło nie tak',
|
||||
'app.errorFallback.hint': 'Wskazówka',
|
||||
'app.errorFallback.reloadApp': 'Przeładuj aplikację',
|
||||
'app.errorFallback.subheading': 'Spróbuj przeładować lub pobrać najnowszą wersję.',
|
||||
'app.errorFallback.tryRecover': 'Spróbuj odzyskać',
|
||||
'app.localAiDownload.installing': 'Instalowanie...',
|
||||
'app.localAiDownload.preparing': 'Przygotowanie...',
|
||||
// app.openhumanLink
|
||||
'app.openhumanLink.accounts.continueWith': 'Kontynuuj z logowaniem {label}',
|
||||
'app.openhumanLink.accounts.done': 'Gotowe',
|
||||
'app.openhumanLink.accounts.intro': 'Podłącz konta, których używasz na co dzień.',
|
||||
'app.openhumanLink.accounts.webviewNote': 'Każde konto otwiera się we własnym oknie webview.',
|
||||
'app.openhumanLink.billing.openDashboard': 'Otwórz panel',
|
||||
'app.openhumanLink.billing.stayOnTrial': 'Zostań w wersji próbnej',
|
||||
'app.openhumanLink.billing.trialCredit': 'Kredyt próbny',
|
||||
'app.openhumanLink.billing.trialDesc':
|
||||
'Korzystasz z bezpłatnego okresu próbnego. Doładuj, aby kontynuować.',
|
||||
'app.openhumanLink.defaultBody':
|
||||
'Jeszcze nie gotowe w popupie. Otwórz pełną stronę ustawień, gdy będziesz potrzebować.',
|
||||
'app.openhumanLink.discord.intro':
|
||||
'Dołącz do społeczności, dziel się opiniami i bądź na bieżąco.',
|
||||
'app.openhumanLink.discord.openInvite': 'Otwórz zaproszenie',
|
||||
'app.openhumanLink.discord.perk1': 'Pomoc bezpośrednio od twórców',
|
||||
'app.openhumanLink.discord.perk2': 'Wczesny dostęp do nowych funkcji',
|
||||
'app.openhumanLink.discord.perk3': 'Wymiana skryptów i przepisów',
|
||||
'app.openhumanLink.discord.perk4': 'Możliwość wpływu na priorytety',
|
||||
'app.openhumanLink.done': 'Gotowe',
|
||||
'app.openhumanLink.loadingChannelSetup': 'Wczytywanie konfiguracji kanału',
|
||||
'app.openhumanLink.maybeLater': 'Może później',
|
||||
'app.openhumanLink.notifications.asking': 'Pytanie systemu operacyjnego…',
|
||||
'app.openhumanLink.notifications.blocked': 'Zablokowane',
|
||||
'app.openhumanLink.notifications.blockedStep1': 'Otwórz Ustawienia systemowe → Powiadomienia.',
|
||||
'app.openhumanLink.notifications.blockedStep2': 'Znajdź OpenHuman na liście aplikacji.',
|
||||
'app.openhumanLink.notifications.blockedStep3': 'Włącz „Zezwalaj na powiadomienia” i wróć tutaj.',
|
||||
'app.openhumanLink.notifications.intro':
|
||||
'Włącz powiadomienia, aby otrzymywać alerty od agenta i kanałów.',
|
||||
'app.openhumanLink.notifications.promptHint': 'Twój system zapyta o zgodę za chwilę.',
|
||||
'app.openhumanLink.notifications.retry': 'Ponów powiadomienie testowe',
|
||||
'app.openhumanLink.notifications.send': 'Wyślij powiadomienie testowe',
|
||||
'app.openhumanLink.notifications.sendFailed': 'Nie udało się wysłać: {error}',
|
||||
'app.openhumanLink.notifications.sent':
|
||||
'Wysłano powiadomienie testowe. Jeśli go nie otrzymałeś(aś), przejdź do Ustawienia systemowe → Powiadomienia → OpenHuman, włącz „Zezwalaj na powiadomienia” i ustaw styl banera na „Trwały”.',
|
||||
'app.openhumanLink.skipForNow': 'Pomiń na razie',
|
||||
'app.openhumanLink.telegramUnavailable': 'Telegram niedostępny',
|
||||
'app.openhumanLink.title.accounts': 'Podłącz swoje aplikacje',
|
||||
'app.openhumanLink.title.billing': 'Rozliczenia i kredyty',
|
||||
'app.openhumanLink.title.discord': 'Dołącz do społeczności',
|
||||
'app.openhumanLink.title.messaging': 'Podłącz kanał komunikacji',
|
||||
'app.openhumanLink.title.notifications': 'Zezwól na powiadomienia',
|
||||
// app.persistRehydration
|
||||
'app.persistRehydration.body':
|
||||
'Trwa odzyskiwanie stanu. Jeśli widzisz ten ekran zbyt długo, zresetuj aplikację.',
|
||||
'app.persistRehydration.heading': 'Przywracanie sesji',
|
||||
'app.persistRehydration.resetCta': 'Resetowanie…',
|
||||
'app.persistRehydration.resetting': 'Resetowanie…',
|
||||
// app.routeLoading
|
||||
'app.routeLoading.initializing': 'Inicjalizacja OpenHuman...',
|
||||
// app.update
|
||||
'app.update.currentlyOn': '{version}',
|
||||
'app.update.errorFallback': 'Coś poszło nie tak podczas aktualizacji.',
|
||||
'app.update.header.default': 'Aktualizacja',
|
||||
'app.update.header.error': 'Aktualizacja nie powiodła się',
|
||||
'app.update.header.installing': 'Instalowanie aktualizacji',
|
||||
'app.update.header.readyToInstall': 'Aktualizacja gotowa do instalacji',
|
||||
'app.update.header.restarting': 'Restartowanie…',
|
||||
'app.update.later': 'Później',
|
||||
'app.update.newVersionReady': 'Nowa wersja jest gotowa do instalacji.',
|
||||
'app.update.progress.downloaded': 'pobrano {amount}',
|
||||
'app.update.progress.installing': 'Instalowanie nowej wersji…',
|
||||
'app.update.progress.restarting': 'Uruchamianie aplikacji ponownie…',
|
||||
'app.update.progress.working': '{percent}%',
|
||||
'app.update.restartNote': 'Restart zamknie wszystkie aktywne sesje czatu i wątki.',
|
||||
'app.update.restartNow': 'Zrestartuj teraz',
|
||||
'app.update.versionReady': 'Wersja {newVersion} jest gotowa do instalacji.',
|
||||
// channels.discord
|
||||
'channels.discord.accountLinked': 'Konto powiązane',
|
||||
'channels.discord.connect': 'Połącz',
|
||||
'channels.discord.linkTokenExpired': 'Token powiązania wygasł. Spróbuj ponownie.',
|
||||
'channels.discord.linkTokenInstruction': '{token}',
|
||||
'channels.discord.linkTokenLabel': 'Etykieta tokenu powiązania',
|
||||
'channels.discord.linkTokenOnce': 'Token jednorazowego powiązania',
|
||||
'channels.discord.picker.allPermissionsOk': 'Bot ma wszystkie wymagane uprawnienia w tym kanale.',
|
||||
'channels.discord.picker.botNotInServers': 'Bot nie jest na serwerach',
|
||||
'channels.discord.picker.category': 'Kategoria',
|
||||
'channels.discord.picker.channel': 'Kanał',
|
||||
'channels.discord.picker.checkingPermissions': 'Sprawdzanie uprawnień',
|
||||
'channels.discord.picker.loadingChannels': 'Wczytywanie kanałów...',
|
||||
'channels.discord.picker.loadingServers': 'Wczytywanie serwerów...',
|
||||
'channels.discord.picker.missingPermissions': 'Brakujące uprawnienia',
|
||||
'channels.discord.picker.noChannels': 'Nie znaleziono kanałów tekstowych',
|
||||
'channels.discord.picker.noServers': 'Nie znaleziono serwerów',
|
||||
'channels.discord.picker.selectChannel': 'Wybierz kanał',
|
||||
'channels.discord.picker.selectServer': 'Wybierz serwer',
|
||||
'channels.discord.picker.server': 'Serwer',
|
||||
'channels.discord.picker.serverChannelSelection': 'Wybór serwera i kanału',
|
||||
'channels.discord.savedRestartRequired':
|
||||
'Kanał zapisany. Zrestartuj aplikację, aby go aktywować.',
|
||||
// channels.telegram
|
||||
'channels.telegram.connect': 'Połącz',
|
||||
'channels.telegram.managedDmConnecting': 'Łączenie zarządzanego DM',
|
||||
'channels.telegram.managedDmTimeout': 'Limit czasu zarządzanego DM',
|
||||
'channels.telegram.reconnect': 'Połącz ponownie',
|
||||
'channels.telegram.savedRestartRequired':
|
||||
'Kanał zapisany. Zrestartuj aplikację, aby go aktywować.',
|
||||
'channels.web.alwaysAvailable': 'Zawsze dostępny',
|
||||
// chat.approval
|
||||
'chat.approval.approve': 'Zatwierdź',
|
||||
'chat.approval.deciding': 'Przetwarzanie…',
|
||||
'chat.approval.deny': 'Odrzuć',
|
||||
'chat.approval.error': 'Nie udało się zapisać decyzji — spróbuj ponownie.',
|
||||
'chat.approval.fallback': 'Agent chce wykonać akcję wymagającą Twojej zgody.',
|
||||
'chat.approval.title': 'Wymagana zgoda',
|
||||
'chat.approval.tool': 'Narzędzie:',
|
||||
// channel displayNames + descriptions
|
||||
'channels.discord.displayName': 'Discord',
|
||||
'channels.discord.description': 'Wysyłaj i odbieraj wiadomości przez Discord.',
|
||||
'channels.discord.authMode.bot_token.description': 'Podaj własny token bota Discord.',
|
||||
'channels.discord.authMode.oauth.description':
|
||||
'Zainstaluj bota OpenHuman na swoim serwerze Discord przez OAuth.',
|
||||
'channels.discord.authMode.managed_dm.description':
|
||||
'Powiąż swoje osobiste konto Discord z botem OpenHuman.',
|
||||
'channels.discord.fields.bot_token.label': 'Token bota',
|
||||
'channels.discord.fields.bot_token.placeholder': 'Twój token bota Discord',
|
||||
'channels.discord.fields.guild_id.label': 'ID serwera (gildii)',
|
||||
'channels.discord.fields.guild_id.placeholder': 'Opcjonalne: ogranicz do konkretnego serwera',
|
||||
'channels.telegram.displayName': 'Telegram',
|
||||
'channels.telegram.description': 'Wysyłaj i odbieraj wiadomości przez Telegram.',
|
||||
'channels.telegram.authMode.managed_dm.description':
|
||||
'Pisz bezpośrednio do bota OpenHuman na Telegramie.',
|
||||
'channels.telegram.authMode.bot_token.description':
|
||||
'Podaj własny token bota Telegram z @BotFather.',
|
||||
'channels.telegram.fields.bot_token.label': 'Token bota',
|
||||
'channels.telegram.fields.bot_token.placeholder': '123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11',
|
||||
'channels.telegram.fields.allowed_users.label': 'Dozwoleni użytkownicy',
|
||||
'channels.telegram.fields.allowed_users.placeholder':
|
||||
'Oddzielone przecinkami nazwy użytkowników Telegrama',
|
||||
'channels.web.displayName': 'Sieć',
|
||||
'channels.web.description': 'Czatuj przez wbudowany interfejs webowy.',
|
||||
'channels.web.authMode.managed_dm.description':
|
||||
'Użyj wbudowanego czatu webowego — bez konfiguracji.',
|
||||
'channels.yuanbao.connect': 'Połącz',
|
||||
'channels.yuanbao.connecting': 'Łączenie…',
|
||||
'channels.yuanbao.fieldRequired': '{field} jest wymagane',
|
||||
'channels.yuanbao.reconnect': 'Połącz ponownie',
|
||||
'channels.yuanbao.savedRestartRequired':
|
||||
'Kanał zapisany. Zrestartuj aplikację, aby go aktywować.',
|
||||
'channels.yuanbao.unexpectedStatus': 'Nieoczekiwany status połączenia: {status}',
|
||||
};
|
||||
|
||||
export default pl3;
|
||||
@@ -0,0 +1,468 @@
|
||||
import type { TranslationMap } from '../types';
|
||||
import en4 from './en-4';
|
||||
|
||||
// Polish chunk 4/5. Spreads the English source-of-truth chunk so every key is
|
||||
// present (i18n parity gate); Polish values below override EN where translated.
|
||||
const pl4: TranslationMap = {
|
||||
...en4,
|
||||
// chat.unsubscribeApproval
|
||||
'chat.unsubscribeApproval.approve': 'Zatwierdź i wypisz',
|
||||
'chat.unsubscribeApproval.approved': '✓ Pomyślnie wypisano.',
|
||||
'chat.unsubscribeApproval.denied': '✕ Żądanie odrzucone.',
|
||||
'chat.unsubscribeApproval.deny': 'Odrzuć',
|
||||
'chat.unsubscribeApproval.processing': 'Przetwarzanie...',
|
||||
'chat.unsubscribeApproval.title': 'Żądanie wypisania',
|
||||
// commandPalette
|
||||
'commandPalette.ariaLabel': 'Paleta poleceń',
|
||||
'commandPalette.description': 'Opis',
|
||||
'commandPalette.label': 'Polecenia',
|
||||
'commandPalette.noResults': 'Brak wyników',
|
||||
'commandPalette.placeholder': 'Wpisz polecenie lub wyszukaj…',
|
||||
'commandPalette.searchAria': 'Szukaj poleceń',
|
||||
'commandPalette.shortcutHint': 'Wciśnij ?, aby zobaczyć wszystkie skróty',
|
||||
'commandPalette.title': 'Paleta poleceń',
|
||||
// composio.connect
|
||||
'composio.connect.additionalConfigRequired': 'Wymagana dodatkowa konfiguracja',
|
||||
'composio.connect.atlassianSubdomainHint': 'acme',
|
||||
'composio.connect.atlassianSubdomainLabel': 'Subdomena Atlassian',
|
||||
'composio.connect.connect': 'Połącz',
|
||||
'composio.connect.connectionFailed': 'Połączenie nie powiodło się (status: {status}).',
|
||||
'composio.connect.disconnectFailed': 'Rozłączenie nie powiodło się: {msg}',
|
||||
'composio.connect.disconnecting': 'Rozłączanie…',
|
||||
'composio.connect.idleDescription': 'Połącz swoje konto',
|
||||
'composio.connect.idleDescriptionSuffix':
|
||||
'. Otworzymy okno przeglądarki, tam zaakceptujesz dostęp, a ta aplikacja wykryje połączenie automatycznie.',
|
||||
'composio.connect.isConnected': 'jest połączone.',
|
||||
'composio.connect.manage': 'Zarządzaj',
|
||||
'composio.connect.needsSubdomain': 'Aby się połączyć',
|
||||
'composio.connect.needsSubdomainSuffix':
|
||||
'wprowadź swoją subdomenę Atlassian (np. acme dla acme.atlassian.net) i spróbuj ponownie.',
|
||||
'composio.connect.oauthComplete': 'Czekam na zakończenie OAuth…',
|
||||
'composio.connect.oauthTimeout': 'Przekroczono czas oczekiwania na OAuth',
|
||||
'composio.connect.permissions': 'Uprawnienia',
|
||||
'composio.connect.permissionsDefault': 'Odczyt + zapis włączone domyślnie',
|
||||
'composio.connect.permissionsNote': 'może wystawiać',
|
||||
'composio.connect.permissionsNoteSuffix':
|
||||
'uprawnienia agenta OpenHuman są kontrolowane poniżej przełącznikami odczytu, zapisu i administracji.',
|
||||
'composio.connect.reopenBrowser': 'Otwórz przeglądarkę ponownie',
|
||||
'composio.connect.requestingUrl': 'Żądanie URL połączenia…',
|
||||
'composio.connect.retryConnection': 'Ponów połączenie',
|
||||
'composio.connect.scopeLoadError': 'Nie udało się wczytać preferencji uprawnień: {msg}',
|
||||
'composio.connect.scopeSaveError': 'Nie udało się zapisać uprawnienia {key}: {msg}',
|
||||
'composio.connect.scope.read': 'Odczyt',
|
||||
'composio.connect.scope.readHint': 'Pozwól agentowi odczytywać dane z tego połączenia.',
|
||||
'composio.connect.scope.write': 'Zapis',
|
||||
'composio.connect.scope.writeHint':
|
||||
'Pozwól agentowi tworzyć lub modyfikować dane przez to połączenie.',
|
||||
'composio.connect.scope.admin': 'Administracja',
|
||||
'composio.connect.scope.adminHint':
|
||||
'Pozwól agentowi zarządzać ustawieniami, uprawnieniami lub akcjami destrukcyjnymi.',
|
||||
'composio.connect.subdomainInvalid':
|
||||
'Wprowadź tylko krótką subdomenę (np. „acme”), nie pełny URL. Powinna zawierać tylko litery, cyfry i myślniki.',
|
||||
'composio.connect.subdomainRequired': 'Wprowadź subdomenę Atlassian, aby kontynuować.',
|
||||
'composio.connect.dynamicsOrgNameLabel': 'Nazwa organizacji Dynamics 365',
|
||||
'composio.connect.dynamicsOrgNameHint':
|
||||
'Na przykład „myorg” dla myorg.crm.dynamics.com. Wprowadź tylko krótką nazwę organizacji, nie pełny URL.',
|
||||
'composio.connect.needsFieldsPrefix': 'Aby się połączyć',
|
||||
'composio.connect.needsFieldsSuffix':
|
||||
'potrzebujemy nieco więcej informacji. Uzupełnij brakujące pola poniżej i spróbuj ponownie.',
|
||||
'composio.connect.requiredFieldEmpty': 'To pole jest wymagane.',
|
||||
'composio.connect.wabaIdHint':
|
||||
'Znajdziesz je przez GET /me/businesses, a następnie GET /{business_id}/owned_whatsapp_business_accounts z tokenem dostępu Meta.',
|
||||
'composio.connect.wabaIdLabel': 'ID WhatsApp Business Account',
|
||||
'composio.connect.wabaIdRequired':
|
||||
'Wprowadź swoje ID WhatsApp Business Account (WABA ID), aby kontynuować.',
|
||||
'composio.connect.waitingFor': 'Oczekiwanie na',
|
||||
'composio.connect.waitingHint': 'Może to potrwać chwilę.',
|
||||
// composio.triggers
|
||||
'composio.triggers.heading': 'Wyzwalacze',
|
||||
'composio.triggers.listenFrom': 'Nasłuchuj zdarzeń z',
|
||||
'composio.triggers.loadError': 'Nie udało się wczytać wyzwalaczy',
|
||||
'composio.triggers.needsConfiguration': 'Wymaga konfiguracji',
|
||||
'composio.triggers.noneAvailable': 'Brak dostępnych wyzwalaczy dla',
|
||||
// conversations
|
||||
'conversations.taskKanban.moveLeft': 'Przesuń w lewo',
|
||||
'conversations.taskKanban.moveRight': 'Przesuń w prawo',
|
||||
'conversations.taskKanban.title': 'Zadania',
|
||||
'conversations.toolTimeline.turn': 'tura',
|
||||
'conversations.toolTimeline.workerThread': 'wątek workera',
|
||||
// daemon
|
||||
'daemon.serviceBlockingGate.body':
|
||||
'Rdzeń OpenHuman nie odpowiada. Spróbuj ponownie lub pobierz najnowszą wersję aplikacji.',
|
||||
'daemon.serviceBlockingGate.downloadHint':
|
||||
'Jeśli problem się powtarza, pobierz najnowszą wersję.',
|
||||
'daemon.serviceBlockingGate.downloadLatest': 'Pobierz najnowszą wersję',
|
||||
'daemon.serviceBlockingGate.retryCore': 'Ponów rdzeń',
|
||||
'daemon.serviceBlockingGate.retryFailed':
|
||||
'Ponowna próba się nie powiodła. Pobierz najnowszą wersję aplikacji i spróbuj ponownie.',
|
||||
'daemon.serviceBlockingGate.retrying': 'Ponawianie...',
|
||||
'daemon.serviceBlockingGate.title': 'Rdzeń OpenHuman jest niedostępny',
|
||||
// home.banners
|
||||
'home.banners.discordSubtitle': 'Pomoc, opinie i wczesny dostęp do funkcji.',
|
||||
'home.banners.discordTitle': 'Dołącz do naszego Discorda',
|
||||
'home.banners.earlyBirdDismiss': 'Odrzuć baner early bird',
|
||||
'home.banners.earlyBirdFirstSub': 'pierwszą subskrypcję.',
|
||||
'home.banners.earlyBirdOn': 'Early bird na',
|
||||
'home.banners.earlyBirdTitle': 'Pierwszych 1000 użytkowników otrzymuje 60% zniżki.',
|
||||
'home.banners.earlyBirdUseCode': 'Użyj kodu early bird',
|
||||
'home.banners.getSubscription': 'wykup subskrypcję',
|
||||
'home.banners.promoCreditsBody': 'Przetestuj OpenHuman, a gdy będziesz gotowy(a) na więcej,',
|
||||
'home.banners.promoCreditsTitle': 'Masz {amount} kredytów promocyjnych.',
|
||||
'home.banners.promoCreditsUsage': 'i uzyskaj 10x więcej użycia.',
|
||||
// intelligence
|
||||
'intelligence.memoryChunk.detail.chunk': 'Fragment',
|
||||
'intelligence.memoryChunk.detail.copyChunkId': 'Skopiuj ID fragmentu',
|
||||
'intelligence.memoryChunk.detail.embeddingInfo': 'bge-m3 1024 wymiarów',
|
||||
'intelligence.memoryChunk.detail.noEmbedding': 'Brak embeddingu',
|
||||
'intelligence.memoryChunk.letterhead.from': 'od',
|
||||
'intelligence.memoryChunk.letterhead.to': 'do',
|
||||
'intelligence.memoryChunk.mentioned.chunkOne': '1 fragment',
|
||||
'intelligence.memoryChunk.mentioned.chunkOther': '{count} fragmentów',
|
||||
'intelligence.memoryChunk.mentioned.heading': 'w z m i a n k o w a n e',
|
||||
'intelligence.memoryChunk.scoreBars.ariaScore': '{name} wynik {pct} procent',
|
||||
'intelligence.memoryChunk.scoreBars.atThreshold': 'na progu {threshold}',
|
||||
'intelligence.memoryChunk.scoreBars.dropped': 'odrzucone',
|
||||
'intelligence.memoryChunk.scoreBars.heading': 'd l a c z e g o z a c h o w a n e',
|
||||
'intelligence.memoryChunk.scoreBars.kept': 'zachowane',
|
||||
'intelligence.memoryText.entityTypePrefix': 'Typ encji',
|
||||
'intelligence.screenDebug.active': 'Aktywne',
|
||||
'intelligence.screenDebug.app': 'Aplikacja',
|
||||
'intelligence.screenDebug.bounds': 'Granice',
|
||||
'intelligence.screenDebug.captureAlt': 'Wynik testu przechwytywania',
|
||||
'intelligence.screenDebug.captureFailed': 'Niepowodzenie',
|
||||
'intelligence.screenDebug.captureSuccess': 'Powodzenie',
|
||||
'intelligence.screenDebug.captureTest': 'Test przechwytywania',
|
||||
'intelligence.screenDebug.capturing': 'Przechwytywanie',
|
||||
'intelligence.screenDebug.frames': 'Klatki',
|
||||
'intelligence.screenDebug.idle': 'Bezczynne',
|
||||
'intelligence.screenDebug.lastApp': 'Ostatnia aplikacja',
|
||||
'intelligence.screenDebug.mode': 'Tryb',
|
||||
'intelligence.screenDebug.permAccessibility': 'Uprawnienie: dostępność',
|
||||
'intelligence.screenDebug.permInput': 'Uprawnienie: wejście',
|
||||
'intelligence.screenDebug.permScreen': 'Dostępność',
|
||||
'intelligence.screenDebug.permissions': 'Uprawnienia',
|
||||
'intelligence.screenDebug.platformNotSupported': 'Platforma nieobsługiwana',
|
||||
'intelligence.screenDebug.recentVisionSummaries': 'Ostatnie podsumowania wizji',
|
||||
'intelligence.screenDebug.session': 'Sesja',
|
||||
'intelligence.screenDebug.size': 'Rozmiar',
|
||||
'intelligence.screenDebug.status': 'Stan',
|
||||
'intelligence.screenDebug.testCapture': 'Testuj przechwytywanie',
|
||||
'intelligence.screenDebug.time': 'Czas',
|
||||
'intelligence.screenDebug.title': 'Tytuł',
|
||||
'intelligence.screenDebug.unknown': 'Nieznane',
|
||||
'intelligence.screenDebug.visionQueue': 'Kolejka wizji',
|
||||
'intelligence.screenDebug.visionState': 'Stan wizji',
|
||||
'intelligence.tasks.activeBoardOne': '1 aktywna tablica w rozmowach',
|
||||
'intelligence.tasks.activeBoardOther': '{count} aktywnych tablic w rozmowach',
|
||||
'intelligence.tasks.empty': 'Brak tablic zadań agenta',
|
||||
'intelligence.tasks.emptyHint': 'Tablice pojawią się tutaj po rozpoczęciu pracy z agentem.',
|
||||
'intelligence.tasks.failedToLoad': 'Nie udało się wczytać',
|
||||
'intelligence.tasks.live': 'na żywo',
|
||||
'intelligence.tasks.loadingBoards': 'Wczytywanie tablic zadań…',
|
||||
'intelligence.tasks.threadPrefix': 'Wątek {thread}',
|
||||
// notifications card/center
|
||||
'notifications.card.dismiss': 'Odrzuć powiadomienie',
|
||||
'notifications.card.importanceTitle': 'Ważność: {pct}%',
|
||||
'notifications.center.empty': 'Brak powiadomień',
|
||||
'notifications.center.emptyHint': 'Nowe powiadomienia pojawią się tutaj.',
|
||||
'notifications.center.filterAll': 'Wszystkie',
|
||||
'notifications.center.markAllRead': 'Oznacz wszystkie jako przeczytane',
|
||||
'notifications.center.title': 'Powiadomienia',
|
||||
// oauth
|
||||
'oauth.button.loopbackTimeout':
|
||||
'Logowanie przekroczyło limit czasu — przeglądarka nie ukończyła przekierowania OAuth. Spróbuj ponownie.',
|
||||
'oauth.button.connecting': 'Łączenie...',
|
||||
'oauth.login.continueWith': 'Kontynuuj z',
|
||||
// onboarding.contextGathering
|
||||
'onboarding.contextGathering.buildingDesc':
|
||||
'Analizujemy Twój kontekst, aby spersonalizować pierwsze rozmowy.',
|
||||
'onboarding.contextGathering.buildingProfile': 'Budowanie Twojego profilu...',
|
||||
'onboarding.contextGathering.continueToChat': 'Przejdź do czatu',
|
||||
'onboarding.contextGathering.errorDesc':
|
||||
'Twój czat jest gotowy. Będziemy nadal budować pełny profil w tle, więc możesz już teraz kontynuować i dopracowywać go z czasem.',
|
||||
'onboarding.contextGathering.coreAlive':
|
||||
'Rdzeń jest osiągalny — pierwsze uruchomienie może potrwać minutę.',
|
||||
'onboarding.contextGathering.coreAliveProbing': 'Sprawdzanie połączenia z rdzeniem…',
|
||||
'onboarding.contextGathering.coreUnreachable':
|
||||
'Rdzeń nie odpowiada. Możesz kontynuować i spróbować ponownie później.',
|
||||
'onboarding.contextGathering.stillWorkingDesc':
|
||||
'Pierwsze uruchomienie może potrwać 30–60 sekund podczas rozgrzewania lokalnego modelu i narzędzi. Możesz przejść do czatu w każdej chwili — budowa profilu działa w tle.',
|
||||
'onboarding.contextGathering.stillWorkingTitle': 'Trwa praca nad Twoim profilem…',
|
||||
'onboarding.contextGathering.title': 'Zbieranie kontekstu',
|
||||
// overlay
|
||||
'overlay.ariaAttention': 'Wiadomość uwagi',
|
||||
'overlay.ariaCompanion': 'Companion aktywny',
|
||||
'overlay.ariaOrb': 'Nakładka OpenHuman',
|
||||
'overlay.ariaVoiceActive': 'Wejście głosowe aktywne',
|
||||
'overlay.companion.error': 'Błąd',
|
||||
'overlay.companion.listening': 'Słucham…',
|
||||
'overlay.companion.pointing': 'Wskazuję…',
|
||||
'overlay.companion.speaking': 'Mówię…',
|
||||
'overlay.companion.thinking': 'Myślę…',
|
||||
'overlay.orbTitle': 'Przeciągnij, aby przesunąć · Kliknij dwukrotnie, aby zresetować pozycję',
|
||||
// pages.settings.account
|
||||
'pages.settings.account.connections': 'Połączenia',
|
||||
'pages.settings.account.connectionsDesc': 'Przeglądaj i zarządzaj połączeniami kont',
|
||||
'pages.settings.account.privacy': 'Prywatność',
|
||||
'pages.settings.account.privacyDesc':
|
||||
'Zarządzaj udostępnianiem danych i anonimowymi preferencjami użycia',
|
||||
'pages.settings.account.recoveryPhrase': 'Fraza odzyskiwania',
|
||||
'pages.settings.account.recoveryPhraseDesc':
|
||||
'Zarządzaj swoją frazą odzyskiwania BIP39 do szyfrowania i dostępu do portfela',
|
||||
'pages.settings.account.team': 'Zespół',
|
||||
'pages.settings.account.teamDesc': 'Zarządzaj zespołem, członkami i zaproszeniami',
|
||||
'pages.settings.account.migration': 'Importuj z innego asystenta',
|
||||
'pages.settings.account.migrationDesc':
|
||||
'Przenieś pamięć i notatki z OpenClaw (a wkrótce również Hermes) do tej przestrzeni roboczej.',
|
||||
'pages.settings.accountSection.description':
|
||||
'Fraza odzyskiwania, zespół, połączenia i ustawienia prywatności.',
|
||||
'pages.settings.accountSection.title': 'Konto',
|
||||
// pages.settings.ai
|
||||
'pages.settings.ai.llm': 'LLM',
|
||||
'pages.settings.ai.llmDesc': 'Dostawcy modeli językowych i trasowanie',
|
||||
'pages.settings.ai.voice': 'Głos',
|
||||
'pages.settings.ai.voiceDesc': 'Konfiguracja STT i TTS dla rozmów głosowych',
|
||||
'pages.settings.ai.embeddings': 'Embeddingi',
|
||||
'pages.settings.ai.embeddingsDesc': 'Model kodowania wektorowego do wyszukiwania w pamięci',
|
||||
'pages.settings.aiSection.description':
|
||||
'Dostawcy modeli językowych, lokalna Ollama i głos (STT / TTS).',
|
||||
'pages.settings.aiSection.title': 'AI',
|
||||
'pages.settings.composioSection.title': 'Composio',
|
||||
'pages.settings.composioSection.description':
|
||||
'Trasowanie, wyzwalacze i historia integracji obsługiwanych przez Composio.',
|
||||
'pages.settings.features.desktopCompanion': 'Desktop Companion',
|
||||
'pages.settings.features.desktopCompanionDesc':
|
||||
'Asystent głosowy ze świadomością ekranu — słucha, widzi, mówi, wskazuje',
|
||||
'pages.settings.features.messagingChannels': 'Kanały komunikacji',
|
||||
'pages.settings.features.messagingChannelsDesc':
|
||||
'Konfiguruj kanały takie jak Telegram, Discord i Slack',
|
||||
'pages.settings.features.notifications': 'Powiadomienia',
|
||||
'pages.settings.features.notificationsDesc':
|
||||
'Steruj alertami systemowymi i kategoriami powiadomień',
|
||||
'pages.settings.features.screenAwareness': 'Świadomość ekranu',
|
||||
'pages.settings.features.screenAwarenessDesc':
|
||||
'Uprawnienia, monitorowanie i sesje przechwytywania ekranu',
|
||||
'pages.settings.features.tools': 'Narzędzia',
|
||||
'pages.settings.features.toolsDesc': 'Wybierz, z jakich możliwości OpenHuman może korzystać',
|
||||
'pages.settings.featuresSection.description': 'Świadomość ekranu, komunikacja i narzędzia.',
|
||||
'pages.settings.featuresSection.title': 'Funkcje',
|
||||
// privacy
|
||||
'privacy.dataKind.credentials': 'Poświadczenia',
|
||||
'privacy.dataKind.derived': 'Wyprowadzone',
|
||||
'privacy.dataKind.diagnostics': 'Diagnostyka',
|
||||
'privacy.dataKind.metadata': 'Metadane',
|
||||
'privacy.dataKind.raw': 'Surowe',
|
||||
'privacy.whatLeaves.link.label': 'Co opuszcza mój komputer?',
|
||||
// rewards.community
|
||||
'rewards.community.achievementsUnlocked': 'Odblokowano {unlocked} z {total} osiągnięć',
|
||||
'rewards.community.connectDiscord': 'Połącz Discord',
|
||||
'rewards.community.cumulativeTokens': 'Łączna liczba tokenów',
|
||||
'rewards.community.currentStreak': 'Aktualna seria',
|
||||
'rewards.community.discordLinkedNotInGuild': 'Powiązane, ale nie na serwerze',
|
||||
'rewards.community.discordMember': 'Dołączono do serwera',
|
||||
'rewards.community.discordNotLinked': 'Nie powiązane',
|
||||
'rewards.community.discordServer': 'Serwer Discord',
|
||||
'rewards.community.discordStatusUnavailable': 'Status członkostwa niedostępny',
|
||||
'rewards.community.discordWaiting': 'Oczekiwanie na synchronizację z backendem',
|
||||
'rewards.community.heroSubtitle':
|
||||
'Odblokuj ekskluzywne kanały, odznaki wspierających i nagrody synchronizowane z backendem, łącząc swoje konto Discord.',
|
||||
'rewards.community.heroTitle': 'Zdobywaj nagrody i role na Discordzie',
|
||||
'rewards.community.joinDiscord': 'Dołącz do Discorda',
|
||||
'rewards.community.loadingRewards': 'Wczytywanie nagród…',
|
||||
'rewards.community.locked': 'Zablokowane',
|
||||
'rewards.community.retrying': 'Ponawianie…',
|
||||
'rewards.community.rolesAndRewards': 'Role i nagrody',
|
||||
'rewards.community.streakDays': '{n} dni',
|
||||
'rewards.community.syncPending': 'Synchronizacja nagród w toku',
|
||||
'rewards.community.syncPendingDesc':
|
||||
'Trwa synchronizacja Twoich nagród. Spróbuj ponownie za chwilę.',
|
||||
'rewards.community.syncUnavailable': 'Synchronizacja niedostępna',
|
||||
'rewards.community.tryAgain': 'Ponawianie…',
|
||||
'rewards.community.unknown': 'Nieznane',
|
||||
'rewards.community.unlocked': 'Odblokowane',
|
||||
'rewards.community.yourProgress': 'Twój postęp',
|
||||
// rewards.coupon
|
||||
'rewards.coupon.colCode': 'Kod',
|
||||
'rewards.coupon.colRedeemed': 'Zrealizowano',
|
||||
'rewards.coupon.colReward': 'Nagroda',
|
||||
'rewards.coupon.colStatus': 'Status',
|
||||
'rewards.coupon.loadingHistory': 'Wczytywanie historii nagród…',
|
||||
'rewards.coupon.noCodes': 'Nie zrealizowano jeszcze żadnych kodów.',
|
||||
'rewards.coupon.pending': 'Oczekujące',
|
||||
'rewards.coupon.placeholder': 'Kod kuponu',
|
||||
'rewards.coupon.promoCredits': 'Kredyty promocyjne',
|
||||
'rewards.coupon.recentRedemptions': 'Ostatnie realizacje',
|
||||
'rewards.coupon.redeemAccepted':
|
||||
'{code} zaakceptowany. {amount} zostanie odblokowane po wykonaniu wymaganej akcji.',
|
||||
'rewards.coupon.redeemButton': 'Zrealizuj kod',
|
||||
'rewards.coupon.redeemSuccess': '{code} zrealizowany. {amount} dodano do Twoich kredytów.',
|
||||
'rewards.coupon.redeemedCodes': 'Zrealizowane kody',
|
||||
'rewards.coupon.redeeming': 'Realizacja...',
|
||||
'rewards.coupon.statusApplied': 'Zastosowano',
|
||||
'rewards.coupon.statusPendingAction': 'Oczekuje na akcję',
|
||||
'rewards.coupon.statusRedeemed': 'Zrealizowano',
|
||||
'rewards.coupon.subtitle': 'Wprowadź kod, aby otrzymać kredyty promocyjne.',
|
||||
'rewards.coupon.title': 'Zrealizuj kod kuponu',
|
||||
// rewards.referralSection
|
||||
'rewards.referralSection.activity': 'Aktywność poleceń',
|
||||
'rewards.referralSection.apply': 'Stosowanie…',
|
||||
'rewards.referralSection.applying': 'Stosowanie…',
|
||||
'rewards.referralSection.colReferredUser': 'Polecony użytkownik',
|
||||
'rewards.referralSection.colReward': 'Nagroda',
|
||||
'rewards.referralSection.colStatus': 'Status',
|
||||
'rewards.referralSection.colUpdated': 'Zaktualizowano',
|
||||
'rewards.referralSection.completed': 'Zakończone',
|
||||
'rewards.referralSection.copyCode': 'Kopiuj kod',
|
||||
'rewards.referralSection.copyFailed': 'Kopiowanie nie powiodło się',
|
||||
'rewards.referralSection.haveCode': 'Masz kod polecający?',
|
||||
'rewards.referralSection.haveCodeDesc':
|
||||
'Wprowadź kod, który otrzymałeś(aś) od znajomego, aby uzyskać bonus.',
|
||||
'rewards.referralSection.linked': 'Powiązane',
|
||||
'rewards.referralSection.linkedCode': '(kod {code})',
|
||||
'rewards.referralSection.loading': 'Wczytywanie programu poleceń…',
|
||||
'rewards.referralSection.noReferrals': 'Brak poleceń',
|
||||
'rewards.referralSection.pendingReferrals': 'Oczekujące polecenia',
|
||||
'rewards.referralSection.placeholder': 'Kod polecający',
|
||||
'rewards.referralSection.share': 'Udostępnij',
|
||||
'rewards.referralSection.statusCompleted': 'Zakończone',
|
||||
'rewards.referralSection.statusExpired': 'Wygasłe',
|
||||
'rewards.referralSection.statusJoined': 'Dołączył(a)',
|
||||
'rewards.referralSection.subtitle': 'Zaproś znajomych do OpenHuman i zarabiajcie kredyty razem.',
|
||||
'rewards.referralSection.title': 'Zapraszaj znajomych, zarabiaj kredyty',
|
||||
'rewards.referralSection.totalEarned': 'Łącznie zarobione',
|
||||
'rewards.referralSection.yourCode': 'Twój kod',
|
||||
// settings.ai (extras)
|
||||
'settings.ai.addCloudProvider': 'Dodaj dostawcę chmurowego',
|
||||
'settings.ai.addProvider': 'Zapisywanie…',
|
||||
'settings.ai.apiKeyFieldLabel': 'Klucz API',
|
||||
'settings.ai.apiKeyRequired': 'Wklej swój klucz API, aby kontynuować.',
|
||||
'settings.ai.apiKeyStoredEncrypted': 'Klucz API przechowywany w postaci zaszyfrowanej',
|
||||
'settings.ai.apiKeysEncrypted': 'auth-profiles.json',
|
||||
'settings.ai.clearStoredKey': 'Wyczyść zapisany klucz',
|
||||
'settings.ai.connectProvider': 'Połącz dostawcę',
|
||||
'settings.ai.customRouting': 'Własne trasowanie',
|
||||
'settings.ai.defaultResolvesTo': 'OpenHuman',
|
||||
'settings.ai.discard': 'Odrzuć',
|
||||
'settings.ai.editProvider': 'Edytuj dostawcę',
|
||||
'settings.ai.llmProviders': 'Dostawcy LLM',
|
||||
'settings.ai.llmProvidersDesc': 'Skonfiguruj dostawców chmurowych i lokalnych modeli językowych.',
|
||||
'settings.ai.localOllama': 'Lokalny (Ollama)',
|
||||
'settings.ai.modelLabel': 'Model',
|
||||
'settings.ai.noCustomProviders': 'Brak własnych dostawców',
|
||||
'settings.ai.openAiCompat.authHeaderExample': 'Authorization: Bearer <Twój klucz>',
|
||||
'settings.ai.openAiCompat.authHeaderLabel': 'Nagłówek uwierzytelniania',
|
||||
'settings.ai.openAiCompat.baseUrlLabel': 'Bazowy URL',
|
||||
'settings.ai.openAiCompat.baseUrlUnavailable': 'Niedostępny',
|
||||
'settings.ai.openAiCompat.clearKey': 'Wyczyść klucz',
|
||||
'settings.ai.openAiCompat.description':
|
||||
'Skieruj lokalne harnesy do tego serwera /v1, aby kierować ruch przez dostawców skonfigurowanych poniżej. Uwierzytelnianie używa stabilnego klucza ustawionego tutaj, nie wewnętrznego tokenu rdzenia aplikacji.',
|
||||
'settings.ai.openAiCompat.keyConfigured': 'Klucz skonfigurowany',
|
||||
'settings.ai.openAiCompat.keyRequired': 'Klucz wymagany',
|
||||
'settings.ai.openAiCompat.rotateKey': 'Rotuj klucz',
|
||||
'settings.ai.openAiCompat.setKey': 'Ustaw klucz',
|
||||
'settings.ai.openAiCompat.title': 'Endpoint kompatybilny z OpenAI',
|
||||
'settings.ai.providerLabel': 'Dostawca',
|
||||
'settings.ai.routing': 'Trasowanie',
|
||||
'settings.ai.routingCustom': 'Własne trasowanie',
|
||||
'settings.ai.routingDefault': 'Domyślne',
|
||||
'settings.ai.routingDesc':
|
||||
'Wybierz, którzy dostawcy obsługują które workloady (czat, tło, embeddingi).',
|
||||
'settings.ai.saveChanges': 'Zapisywanie…',
|
||||
'settings.ai.saving': 'Zapisywanie…',
|
||||
'settings.ai.unsavedChange': 'niezapisana zmiana',
|
||||
'settings.ai.unsavedChanges': 'niezapisane zmiany',
|
||||
'settings.ai.workloadGroupBackground': 'Grupa workloadów: tło',
|
||||
'settings.ai.workloadGroupChat': 'Grupa workloadów: czat',
|
||||
// settings.autocomplete
|
||||
'settings.autocomplete.appFilter.acceptSuggestion': 'Akceptuj sugestię',
|
||||
'settings.autocomplete.appFilter.contextOverride': 'Nadpisanie kontekstu (opcjonalne)',
|
||||
'settings.autocomplete.appFilter.debugFocus': 'Debug fokusa',
|
||||
'settings.autocomplete.appFilter.getSuggestion': 'Pobierz sugestię',
|
||||
'settings.autocomplete.appFilter.liveLogs': 'Dziennik na żywo',
|
||||
'settings.autocomplete.appFilter.noLogs': ') :',
|
||||
'settings.autocomplete.appFilter.refreshStatus': 'Odświeżanie…',
|
||||
'settings.autocomplete.appFilter.refreshing': 'Odświeżanie…',
|
||||
'settings.autocomplete.appFilter.runtime': 'Środowisko',
|
||||
'settings.autocomplete.appFilter.test': 'Test',
|
||||
'settings.autocomplete.completionStyle.acceptedCompletion':
|
||||
'Zapisano {count} zaakceptowane uzupełnienie — używane do personalizacji przyszłych sugestii.',
|
||||
'settings.autocomplete.completionStyle.acceptedCompletions':
|
||||
'Zapisano {count} zaakceptowanych uzupełnień — używane do personalizacji przyszłych sugestii.',
|
||||
'settings.autocomplete.completionStyle.clearHistory': 'Czyszczenie…',
|
||||
'settings.autocomplete.completionStyle.clearing': 'Czyszczenie…',
|
||||
'settings.autocomplete.completionStyle.debounce': 'Debounce (ms)',
|
||||
'settings.autocomplete.completionStyle.enabled': 'Włączone',
|
||||
'settings.autocomplete.completionStyle.maxChars': 'Maks. znaków',
|
||||
'settings.autocomplete.completionStyle.noHistory':
|
||||
'Brak zaakceptowanych uzupełnień. Akceptuj sugestie Tabem, aby rozpocząć personalizację.',
|
||||
'settings.autocomplete.completionStyle.overlayTtl': 'TTL nakładki (ms)',
|
||||
'settings.autocomplete.completionStyle.personalizationHistory': 'Historia personalizacji',
|
||||
'settings.autocomplete.completionStyle.styleExamples': 'Przykłady stylu (jeden w wierszu)',
|
||||
'settings.autocomplete.completionStyle.styleInstructions': 'Instrukcje stylu',
|
||||
// settings.billing.autoRecharge
|
||||
'settings.billing.autoRecharge.addAmount': 'Dodaj tę kwotę',
|
||||
'settings.billing.autoRecharge.addCard': 'Dodaj kartę',
|
||||
'settings.billing.autoRecharge.amountHint': 'Minimalna kwota doładowania to równowartość 5 USD.',
|
||||
'settings.billing.autoRecharge.defaultCard': 'Karta domyślna',
|
||||
'settings.billing.autoRecharge.lastRechargeFailed': 'Ostatnie doładowanie nie powiodło się',
|
||||
'settings.billing.autoRecharge.lastRecharged': 'Ostatnio doładowano',
|
||||
'settings.billing.autoRecharge.noCards': 'Brak kart',
|
||||
'settings.billing.autoRecharge.paymentMethods': 'Metody płatności',
|
||||
'settings.billing.autoRecharge.rechargeInProgress': 'Doładowanie w toku',
|
||||
'settings.billing.autoRecharge.rechargeWhen': 'Doładuj, gdy saldo spadnie poniżej',
|
||||
'settings.billing.autoRecharge.saveSettings': 'Zapisywanie…',
|
||||
'settings.billing.autoRecharge.saving': 'Zapisywanie…',
|
||||
'settings.billing.autoRecharge.setDefault': ':',
|
||||
'settings.billing.autoRecharge.subtitle':
|
||||
'Automatycznie doładowuj kredyty, gdy saldo spadnie poniżej progu.',
|
||||
'settings.billing.autoRecharge.title': 'Włącz automatyczne doładowanie',
|
||||
'settings.billing.autoRecharge.toggleAriaLabel': 'Przełącz automatyczne doładowanie',
|
||||
'settings.billing.autoRecharge.weeklyLimit': 'Tygodniowy limit wydatków',
|
||||
// settings.billing.history
|
||||
'settings.billing.history.desc': 'Twoje ostatnie transakcje i rozliczenia.',
|
||||
'settings.billing.history.empty': 'Brak historii do wyświetlenia.',
|
||||
'settings.billing.history.openPortal': 'Otwórz portal',
|
||||
'settings.billing.history.posted': 'Zaksięgowano',
|
||||
'settings.billing.history.title': 'Historia rozliczeń',
|
||||
// settings.billing.inferenceBudget
|
||||
'settings.billing.inferenceBudget.cycleEnds': 'Koniec cyklu',
|
||||
'settings.billing.inferenceBudget.exhausted': 'Wyczerpane',
|
||||
'settings.billing.inferenceBudget.loadError': 'Błąd wczytywania',
|
||||
'settings.billing.inferenceBudget.noBudgetDesc':
|
||||
'Brak aktywnego budżetu cyklicznego. Wykup plan, aby zacząć.',
|
||||
'settings.billing.inferenceBudget.noRecurringBudget': 'Brak budżetu cyklicznego',
|
||||
'settings.billing.inferenceBudget.remaining': 'Pozostało',
|
||||
'settings.billing.inferenceBudget.tenHourCap': 'Limit 10-godzinny',
|
||||
'settings.billing.inferenceBudget.title': 'Budżet inferencji',
|
||||
// settings.billing.payAsYouGo
|
||||
'settings.billing.payAsYouGo.available': 'Dostępne',
|
||||
'settings.billing.payAsYouGo.chargeCustomAmount': 'Otwieranie…',
|
||||
'settings.billing.payAsYouGo.chooseTopUpDesc': 'Wybierz kwotę doładowania lub wprowadź własną.',
|
||||
'settings.billing.payAsYouGo.chooseTopUpTitle': 'Wybierz kwotę doładowania',
|
||||
'settings.billing.payAsYouGo.creditBalanceDesc':
|
||||
'Twoje aktualne saldo kredytów dostępne do użycia.',
|
||||
'settings.billing.payAsYouGo.creditBalanceTitle': 'Saldo kredytów',
|
||||
'settings.billing.payAsYouGo.customAmount': 'Własna kwota',
|
||||
'settings.billing.payAsYouGo.enterAmount': 'Wprowadź kwotę',
|
||||
'settings.billing.payAsYouGo.opening': 'Otwieranie',
|
||||
'settings.billing.payAsYouGo.promotionalCredits': 'Kredyty promocyjne',
|
||||
'settings.billing.payAsYouGo.topUpBalance': 'Doładuj saldo',
|
||||
'settings.billing.payAsYouGo.topUpCredits': 'Doładuj kredyty',
|
||||
'settings.billing.payAsYouGo.unableToLoad': 'Nie można wczytać salda.',
|
||||
// settings.billing.subscription
|
||||
'settings.billing.subscription.annual': 'Roczna',
|
||||
'settings.billing.subscription.billedAnnually': 'Rozliczane rocznie',
|
||||
'settings.billing.subscription.chooseSubtitle': 'Wybierz plan dopasowany do Twoich potrzeb.',
|
||||
'settings.billing.subscription.chooseTitle': 'Wybierz plan',
|
||||
'settings.billing.subscription.cryptoDesc':
|
||||
'Możesz zapłacić również w kryptowalucie — skontaktuj się z nami.',
|
||||
'settings.billing.subscription.cryptoQuestion': 'Wolisz zapłacić kryptowalutą?',
|
||||
'settings.billing.subscription.current': 'Bieżący',
|
||||
'settings.billing.subscription.currentPlan': 'Bieżący plan',
|
||||
'settings.billing.subscription.monthly': 'Miesięczna',
|
||||
'settings.billing.subscription.paymentConfirmed': 'Płatność potwierdzona',
|
||||
'settings.billing.subscription.perMonth': 'miesięcznie',
|
||||
'settings.billing.subscription.popular': 'Popularne',
|
||||
};
|
||||
|
||||
export default pl4;
|
||||
@@ -0,0 +1,819 @@
|
||||
import type { TranslationMap } from '../types';
|
||||
import en5 from './en-5';
|
||||
|
||||
// Polish chunk 5/5. Spreads the English source-of-truth chunk so every key is
|
||||
// present (i18n parity gate); Polish values below override EN where translated.
|
||||
const pl5: TranslationMap = {
|
||||
...en5,
|
||||
// settings.billing.subscription (extras)
|
||||
'settings.billing.subscription.save': '{pct}',
|
||||
'settings.billing.subscription.upgrade': 'Podnieś plan',
|
||||
'settings.billing.subscription.waiting': 'Oczekiwanie',
|
||||
'settings.billing.subscription.waitingPayment': 'Oczekiwanie na płatność',
|
||||
// settings.composio
|
||||
'settings.composio.apiKeyDesc':
|
||||
'Klucz API Composio jest obecnie przechowywany na tym urządzeniu.',
|
||||
'settings.composio.apiKeyLabel': 'Klucz API Composio',
|
||||
'settings.composio.apiKeyStored': 'Klucz API zapisany',
|
||||
'settings.composio.apiKeyStoredPlaceholder': '••••••••••••••••',
|
||||
'settings.composio.clearedToBackend': 'Przełączono na tryb backendowy',
|
||||
'settings.composio.confirmItem1': 'Konto w app.composio.dev z kluczem API',
|
||||
'settings.composio.confirmItem2':
|
||||
'Ponowne powiązanie każdej integracji przez Twoje osobiste konto Composio',
|
||||
'settings.composio.confirmItem3':
|
||||
'Uwaga: wyzwalacze Composio (webhooks w czasie rzeczywistym) nie działają jeszcze w trybie bezpośrednim — tylko synchroniczne wywołania narzędzi',
|
||||
'settings.composio.confirmNeedItems': 'Będziesz potrzebować:',
|
||||
'settings.composio.confirmSwitch': 'Rozumiem, przełącz na tryb bezpośredni',
|
||||
'settings.composio.confirmTitle': '⚠️ Przełączanie na tryb bezpośredni',
|
||||
'settings.composio.confirmWarning':
|
||||
'Twoje istniejące integracje (Gmail, Slack, GitHub itp. połączone przez OpenHuman) nie będą widoczne — żyją w tenant Composio zarządzanym przez OpenHuman.',
|
||||
'settings.composio.intro':
|
||||
'Composio integruje 250+ zewnętrznych aplikacji jako narzędzia, z których może korzystać Twój agent. Wybierz, jak kierować te wywołania.',
|
||||
'settings.composio.modeDirect': 'Bezpośredni (przynieś własny klucz API)',
|
||||
'settings.composio.modeDirectDesc':
|
||||
'Wywołania trafiają bezpośrednio do backend.composio.dev. Suwerennie / przyjazne offline. Wywołania narzędzi działają synchronicznie; webhooks wyzwalaczy w czasie rzeczywistym nie są jeszcze trasowane w trybie bezpośrednim.',
|
||||
'settings.composio.modeManaged': 'Zarządzany (OpenHuman robi to za Ciebie)',
|
||||
'settings.composio.modeManagedDesc':
|
||||
'OpenHuman pośredniczy w wywołaniach narzędzi przez nasz backend (zalecane). Uwierzytelnianie jest pośredniczone; nie musisz wklejać klucza API Composio. Webhooks są w pełni trasowane.',
|
||||
'settings.composio.routingMode': 'Tryb trasowania',
|
||||
'settings.composio.saveErrorNoKey':
|
||||
'Nie udało się zapisać. Tryb bezpośredni wymaga niepustego klucza API.',
|
||||
'settings.composio.saving': 'Zapisywanie…',
|
||||
'settings.composio.switching': 'Przełączanie…',
|
||||
// settings.cron
|
||||
'settings.cron.jobs.desc': 'Zadania cykliczne uruchamiane przez harmonogram rdzenia.',
|
||||
'settings.cron.jobs.empty': 'Nie znaleziono zadań cron rdzenia.',
|
||||
'settings.cron.jobs.lastStatus': 'Ostatni status',
|
||||
'settings.cron.jobs.loading': 'Wczytywanie zadań cron...',
|
||||
'settings.cron.jobs.loadingRuns': 'Wczytywanie uruchomień',
|
||||
'settings.cron.jobs.nextRun': 'Następne uruchomienie',
|
||||
'settings.cron.jobs.pause': 'Wstrzymaj',
|
||||
'settings.cron.jobs.paused': 'Włączone',
|
||||
'settings.cron.jobs.recentRuns': 'Ostatnie uruchomienia',
|
||||
'settings.cron.jobs.removing': 'Usuwanie',
|
||||
'settings.cron.jobs.resume': 'Wznów',
|
||||
'settings.cron.jobs.runningNow': 'Uruchamiane teraz',
|
||||
'settings.cron.jobs.saving': 'Zapisywanie…',
|
||||
'settings.cron.jobs.schedule': 'Harmonogram',
|
||||
'settings.cron.jobs.title': 'Zadania cron rdzenia',
|
||||
'settings.cron.jobs.viewRuns': 'Zobacz uruchomienia',
|
||||
// settings.localModel.deviceCapability
|
||||
'settings.localModel.deviceCapability.active': 'Aktywne',
|
||||
'settings.localModel.deviceCapability.appliedTier': 'Zastosowany poziom',
|
||||
'settings.localModel.deviceCapability.applying': 'Stosowanie',
|
||||
'settings.localModel.deviceCapability.cores': '{count}',
|
||||
'settings.localModel.deviceCapability.couldNotLoadPresets': 'Nie udało się wczytać presetów',
|
||||
'settings.localModel.deviceCapability.cpu': 'CPU',
|
||||
'settings.localModel.deviceCapability.customModelIds': 'Własne ID modeli',
|
||||
'settings.localModel.deviceCapability.detected': 'Wykryto',
|
||||
'settings.localModel.deviceCapability.disabled': 'Wyłączone',
|
||||
'settings.localModel.deviceCapability.disabledDesc':
|
||||
'Lokalne AI wyłączone — używana jest chmura jako rezerwa.',
|
||||
'settings.localModel.deviceCapability.downloadingModels': '(pobieranie modeli)',
|
||||
'settings.localModel.deviceCapability.downloadingSetupDesc':
|
||||
'Pobieranie instalatora OllamaSetup (~2 GB) i rozpakowywanie. Pierwsza instalacja może potrwać minutę.',
|
||||
'settings.localModel.deviceCapability.failedToApplyPreset': 'Nie udało się zastosować presetu',
|
||||
'settings.localModel.deviceCapability.gpu': 'GPU',
|
||||
'settings.localModel.deviceCapability.installFailed': 'Instalacja Ollama nie powiodła się',
|
||||
'settings.localModel.deviceCapability.installFailedDesc':
|
||||
'Instalator zakończył pracę, zanim Ollama była gotowa. Kliknij ponów, aby spróbować jeszcze raz, lub zainstaluj ręcznie z ollama.com.',
|
||||
'settings.localModel.deviceCapability.installFirst': 'Najpierw uruchom Ollamę.',
|
||||
'settings.localModel.deviceCapability.installFirstDesc':
|
||||
'Lokalne poziomy zależą od zewnętrznie zarządzanego endpointu Ollama. Uruchom go samodzielnie, pobierz potrzebne modele i pozostań przy „Wyłączone (rezerwa chmurowa)”, dopóki środowisko nie będzie osiągalne.',
|
||||
'settings.localModel.deviceCapability.installOllamaFirst':
|
||||
'Najpierw uruchom Ollamę, aby użyć tego poziomu',
|
||||
'settings.localModel.deviceCapability.installingOllama': 'Instalowanie Ollama',
|
||||
'settings.localModel.deviceCapability.loadingDeviceInfo': 'Wczytywanie informacji o urządzeniu',
|
||||
'settings.localModel.deviceCapability.localAiDisabled':
|
||||
'Lokalne AI wyłączone — używana jest rezerwa chmurowa.',
|
||||
'settings.localModel.deviceCapability.modelTier': 'Poziom modelu',
|
||||
'settings.localModel.deviceCapability.needsOllama': 'Wymaga Ollama',
|
||||
'settings.localModel.deviceCapability.notDetected': 'Nie wykryto',
|
||||
'settings.localModel.deviceCapability.ram': 'RAM',
|
||||
'settings.localModel.deviceCapability.recommended': 'Zalecane',
|
||||
'settings.localModel.deviceCapability.retryInstall': 'Ponawianie…',
|
||||
'settings.localModel.deviceCapability.retrying': 'Ponawianie…',
|
||||
'settings.localModel.deviceCapability.starting': 'Uruchamianie…',
|
||||
// settings.localModel.download
|
||||
'settings.localModel.download.audioPathPlaceholder': 'Bezwzględna ścieżka do pliku audio',
|
||||
'settings.localModel.download.capabilityAssets': 'Zasoby możliwości',
|
||||
'settings.localModel.download.downloading': 'Pobieranie...',
|
||||
'settings.localModel.download.embeddingPlaceholder': 'Jeden ciąg wejściowy w wierszu...',
|
||||
'settings.localModel.download.noThinkMode': 'Tryb bez myślenia',
|
||||
'settings.localModel.download.promptPlaceholder':
|
||||
'Wpisz dowolny prompt i uruchom go na modelu lokalnym...',
|
||||
'settings.localModel.download.quantizationPref': 'Preferencja kwantyzacji',
|
||||
'settings.localModel.download.runEmbeddingTest': 'Uruchamianie...',
|
||||
'settings.localModel.download.runPromptTest': 'Uruchom test promptu',
|
||||
'settings.localModel.download.runSummaryTest': 'Uruchom test podsumowania',
|
||||
'settings.localModel.download.runTranscriptionTest': 'Uruchamianie...',
|
||||
'settings.localModel.download.runTtsTest': 'Uruchamianie...',
|
||||
'settings.localModel.download.runVisionTest': 'Uruchamianie...',
|
||||
'settings.localModel.download.running': 'Uruchamianie...',
|
||||
'settings.localModel.download.runningPrompt': 'Uruchamianie promptu',
|
||||
'settings.localModel.download.summarizePlaceholder':
|
||||
'Wklej tekst do podsumowania modelem lokalnym...',
|
||||
'settings.localModel.download.testCustomPrompt': 'Testuj własny prompt',
|
||||
'settings.localModel.download.testEmbeddings': 'Testuj embeddingi',
|
||||
'settings.localModel.download.testSummarization': 'Testuj podsumowywanie',
|
||||
'settings.localModel.download.testVisionPrompt': 'Testuj prompt wizji',
|
||||
'settings.localModel.download.testVoiceInput': 'Testuj wejście głosowe (STT)',
|
||||
'settings.localModel.download.testVoiceOutput': 'Testuj wyjście głosowe (TTS)',
|
||||
'settings.localModel.download.ttsOutputPlaceholder': 'Opcjonalna ścieżka wyjściowa WAV',
|
||||
'settings.localModel.download.ttsPlaceholder': 'Wprowadź tekst do syntezy...',
|
||||
'settings.localModel.download.visionImagePlaceholder':
|
||||
'Jedno odniesienie do obrazu w wierszu (data URI, URL lub marker lokalnej ścieżki)',
|
||||
'settings.localModel.download.visionPromptPlaceholder': 'Wprowadź prompt dla modelu wizji...',
|
||||
// settings.localModel.status
|
||||
'settings.localModel.status.allChecksPassed': 'Wszystkie testy zaliczone',
|
||||
'settings.localModel.status.artifact': 'Artefakt',
|
||||
'settings.localModel.status.backend': 'Backend',
|
||||
'settings.localModel.status.binary': 'Plik binarny',
|
||||
'settings.localModel.status.bootstrapResume': 'Inicjalizacja / wznowienie',
|
||||
'settings.localModel.status.checking': 'Sprawdzanie...',
|
||||
'settings.localModel.status.checkingOllama': 'Sprawdzanie Ollama',
|
||||
'settings.localModel.status.customLocation': 'Własna lokalizacja',
|
||||
'settings.localModel.status.customLocationDesc': 'Wskaż ręcznie ścieżkę do binarki Ollama.',
|
||||
'settings.localModel.status.diagnosticsHint':
|
||||
'Kliknij „Uruchom diagnostykę”, aby zweryfikować, że Ollama działa i modele są zainstalowane.',
|
||||
'settings.localModel.status.downloadingUnknown': 'Pobieranie (rozmiar nieznany)',
|
||||
'settings.localModel.status.eta': 'Pozostały czas',
|
||||
'settings.localModel.status.expectedModels': 'Oczekiwane modele',
|
||||
'settings.localModel.status.forceRebootstrap': 'Wymuś ponowną inicjalizację',
|
||||
'settings.localModel.status.generationTps': 'TPS generowania',
|
||||
'settings.localModel.status.hideErrorDetails': 'Ukryj szczegóły błędu',
|
||||
'settings.localModel.status.installManually': 'Zainstaluj ręcznie',
|
||||
'settings.localModel.status.installManuallyFrom': 'Zainstaluj ręcznie z',
|
||||
'settings.localModel.status.installOllama': 'Uruchamianie…',
|
||||
'settings.localModel.status.installedModels': 'Zainstalowane modele',
|
||||
'settings.localModel.status.installing': 'Instalowanie...',
|
||||
'settings.localModel.status.installingOllama': 'Instalowanie środowiska Ollama...',
|
||||
'settings.localModel.status.issues': 'Problemy',
|
||||
'settings.localModel.status.issuesFound': 'Znaleziono {count} problemów',
|
||||
'settings.localModel.status.lastLatency': 'Ostatnie opóźnienie',
|
||||
'settings.localModel.status.model': 'Model',
|
||||
'settings.localModel.status.notFound': 'Nie znaleziono',
|
||||
'settings.localModel.status.notRunning': 'Nie działa',
|
||||
'settings.localModel.status.ollamaBinaryPath': 'Ścieżka binarki Ollama',
|
||||
'settings.localModel.status.ollamaDiagnostics': 'Diagnostyka Ollama',
|
||||
'settings.localModel.status.ollamaNotInstalled': 'Środowisko Ollama niedostępne',
|
||||
'settings.localModel.status.ollamaNotInstalledDesc':
|
||||
'OpenHuman traktuje teraz Ollamę jako zewnętrzne środowisko inferencji. Uruchom własny serwer Ollama, pobierz potrzebne modele i skieruj na niego trasowanie workloadów.',
|
||||
'settings.localModel.status.progress': 'Postęp',
|
||||
'settings.localModel.status.provider': 'Dostawca',
|
||||
'settings.localModel.status.retryBootstrap': 'Ponów inicjalizację',
|
||||
'settings.localModel.status.runDiagnostics': 'Sprawdzanie...',
|
||||
'settings.localModel.status.running': 'Działa',
|
||||
'settings.localModel.status.runningExternalProcess': 'Działa przez zewnętrzny proces',
|
||||
'settings.localModel.status.runtimeStatus': 'Stan środowiska',
|
||||
'settings.localModel.status.server': 'Serwer',
|
||||
'settings.localModel.status.setPath': 'Ustawianie...',
|
||||
'settings.localModel.status.setting': 'Ustawianie...',
|
||||
'settings.localModel.status.showErrorDetails': 'Ukryj szczegóły błędu',
|
||||
'settings.localModel.status.showInstallErrorDetails': 'Ukryj szczegóły błędu',
|
||||
'settings.localModel.status.suggestedFixes': 'Sugerowane poprawki',
|
||||
'settings.localModel.status.thenSetPath': 'Następnie ustaw ścieżkę',
|
||||
'settings.localModel.status.triggering': 'Uruchamianie...',
|
||||
'settings.localModel.status.unavailable': 'Niedostępne',
|
||||
'settings.localModel.status.working': 'Pracuję...',
|
||||
// settings.developerMenu
|
||||
'settings.developerMenu.ai.title': 'Konfiguracja AI',
|
||||
'settings.developerMenu.ai.desc':
|
||||
'Dostawcy chmurowi, lokalne modele Ollama i trasowanie per workload',
|
||||
'settings.developerMenu.screenAwareness.title': 'Świadomość ekranu',
|
||||
'settings.developerMenu.screenAwareness.desc':
|
||||
'Uprawnienia do przechwytywania ekranu, polityka monitorowania i kontrola sesji',
|
||||
'settings.developerMenu.messagingChannels.title': 'Kanały komunikacji',
|
||||
'settings.developerMenu.messagingChannels.desc':
|
||||
'Konfiguruj tryby uwierzytelniania Telegram/Discord i domyślne trasowanie',
|
||||
'settings.developerMenu.tools.title': 'Narzędzia',
|
||||
'settings.developerMenu.tools.desc':
|
||||
'Włącz lub wyłącz możliwości, z których OpenHuman może korzystać w Twoim imieniu',
|
||||
'settings.developerMenu.agentChat.title': 'Czat z agentem',
|
||||
'settings.developerMenu.agentChat.desc':
|
||||
'Testuj rozmowę z agentem z nadpisaniami modelu i temperatury',
|
||||
'settings.developerMenu.cronJobs.title': 'Zadania cron',
|
||||
'settings.developerMenu.cronJobs.desc':
|
||||
'Przeglądaj i konfiguruj zaplanowane zadania dla umiejętności runtime',
|
||||
'settings.developerMenu.localModelDebug.title': 'Debug modelu lokalnego',
|
||||
'settings.developerMenu.localModelDebug.desc':
|
||||
'Konfiguracja Ollama, pobieranie zasobów, testy modeli i diagnostyka',
|
||||
'settings.developerMenu.composio.title': 'Composio',
|
||||
'settings.developerMenu.composio.desc':
|
||||
'Tryb trasowania, wyzwalacze integracji i archiwum historii wyzwalaczy.',
|
||||
'settings.developerMenu.webhooks.title': 'Webhooks',
|
||||
'settings.developerMenu.webhooks.desc':
|
||||
'Sprawdź rejestracje webhooków w runtime i logi przechwyconych żądań',
|
||||
'settings.developerMenu.intelligence.title': 'Inteligencja',
|
||||
'settings.developerMenu.intelligence.desc':
|
||||
'Przestrzeń pamięci, silnik podświadomości, sny i ustawienia',
|
||||
'settings.developerMenu.notificationRouting.title': 'Trasowanie powiadomień',
|
||||
'settings.developerMenu.notificationRouting.desc':
|
||||
'Punktacja ważności AI i eskalacja orkiestratora dla alertów integracji',
|
||||
'settings.developerMenu.composeioTriggers.title': 'Wyzwalacze ComposeIO',
|
||||
'settings.developerMenu.composeioTriggers.desc':
|
||||
'Przeglądaj historię i archiwum wyzwalaczy ComposeIO',
|
||||
'settings.developerMenu.composioRouting.title': 'Trasowanie Composio (tryb bezpośredni)',
|
||||
'settings.developerMenu.composioRouting.desc':
|
||||
'Użyj własnego klucza API Composio i kieruj wywołania bezpośrednio do backend.composio.dev',
|
||||
'settings.developerMenu.integrationTriggers.title': 'Wyzwalacze integracji',
|
||||
'settings.developerMenu.integrationTriggers.desc':
|
||||
'Konfiguruj ustawienia klasyfikacji AI dla wyzwalaczy integracji Composio',
|
||||
'settings.appearance.menuDesc': 'Wybierz jasny, ciemny lub dopasowany do systemu motyw',
|
||||
// settings.agentAccess
|
||||
'settings.agentAccess.title': 'Dostęp agenta do systemu',
|
||||
'settings.agentAccess.menuDesc':
|
||||
'Kontroluj, gdzie agent może czytać/pisać oraz czy może używać powłoki.',
|
||||
'settings.agentAccess.loadError': 'Nie udało się wczytać ustawień dostępu',
|
||||
'settings.agentAccess.saveError': 'Nie udało się zapisać ustawień dostępu',
|
||||
'settings.agentAccess.saved': 'Zapisano — zostanie zastosowane w następnej wiadomości.',
|
||||
'settings.agentAccess.desktopOnly':
|
||||
'Ustawienia dostępu są dostępne tylko w aplikacji desktopowej.',
|
||||
'settings.agentAccess.loading': 'Wczytywanie…',
|
||||
'settings.agentAccess.accessMode': 'Tryb dostępu',
|
||||
'settings.agentAccess.tier.readonly.title': 'Tylko do odczytu',
|
||||
'settings.agentAccess.tier.readonly.desc':
|
||||
'Czyta pliki i uruchamia polecenia tylko do odczytu, aby eksplorować — ale nigdy nie zapisuje, nie edytuje ani nie uruchamia niczego, co zmienia stan.',
|
||||
'settings.agentAccess.tier.supervised.title': 'Pytaj przed edycją',
|
||||
'settings.agentAccess.tier.supervised.desc':
|
||||
'Tworzy nowe pliki swobodnie, ale pyta o Twoją zgodę przed edycją istniejącego pliku, uruchomieniem polecenia, dostępem do sieci lub instalacją czegokolwiek.',
|
||||
'settings.agentAccess.tier.full.title': 'Pełny dostęp',
|
||||
'settings.agentAccess.tier.full.desc':
|
||||
'Uruchamia polecenia z pełnym dostępem Twojego konta — może czytać/pisać wszędzie, gdzie to dozwolone, oprócz magazynów poświadczeń i systemowych. Polecenia destrukcyjne, dostęp do sieci i instalacje nadal proszą o zgodę.',
|
||||
'settings.agentAccess.defaultTag': '(domyślny)',
|
||||
'settings.agentAccess.fullWarning':
|
||||
'⚠ Pełny dostęp uruchamia polecenia z pełnymi uprawnieniami Twojego konta i nie jest sandboxowany. Włącz to tylko wtedy, gdy ufasz agentowi na tym komputerze. Katalogi poświadczeń i systemowe pozostają zablokowane, a akcje destrukcyjne, sieciowe i instalacyjne nadal proszą o zgodę.',
|
||||
'settings.agentAccess.confine.label': 'Ogranicz do przestrzeni roboczej',
|
||||
'settings.agentAccess.confine.desc':
|
||||
'Ogranicz agenta do katalogu przestrzeni roboczej (oraz dodanych folderów), niezależnie od wybranego trybu dostępu. Wyłączone — może sięgać wszędzie, gdzie Twój użytkownik, oprócz zawsze zablokowanych katalogów poświadczeń i systemowych.',
|
||||
'settings.agentAccess.grantedFolders': 'Przyznane foldery',
|
||||
'settings.agentAccess.grantedDesc':
|
||||
'Foldery, do których agent może czytać i pisać, oprócz przestrzeni roboczej. Magazyny poświadczeń (~/.ssh, ~/.gnupg, ~/.aws, keychains) i katalogi systemowe (/etc, /System, C:\\Windows, …) są zawsze zablokowane, nawet w przyznanym folderze.',
|
||||
'settings.agentAccess.noneGranted': 'Brak przyznanych folderów.',
|
||||
'settings.agentAccess.readWrite': 'odczyt + zapis',
|
||||
'settings.agentAccess.readOnly': 'tylko do odczytu',
|
||||
'settings.agentAccess.remove': 'Usuń',
|
||||
'settings.agentAccess.pathPlaceholder': 'Bezwzględna ścieżka folderu',
|
||||
'settings.agentAccess.accessLevelLabel': 'Poziom dostępu',
|
||||
'settings.agentAccess.add': 'Dodaj',
|
||||
'settings.agentAccess.saving': 'Zapisywanie…',
|
||||
'settings.agentAccess.changesApply': 'Zmiany zostaną zastosowane w następnej wiadomości.',
|
||||
// settings.mascot
|
||||
'settings.mascot.active': 'Aktywny',
|
||||
'settings.mascot.characterDesc': 'Wybierz charakter maskotki OpenHuman.',
|
||||
'settings.mascot.characterHeading': 'Charakter',
|
||||
'settings.mascot.customGifError':
|
||||
'Wprowadź URL .gif HTTPS, URL .gif loopback HTTP, URL file:// .gif lub lokalną ścieżkę .gif.',
|
||||
'settings.mascot.customGifHeading': 'Własny awatar GIF',
|
||||
'settings.mascot.customGifLabel': 'URL własnego awatara GIF',
|
||||
'settings.mascot.colorDesc': 'Wybierz kolor maskotki używany w całej aplikacji.',
|
||||
'settings.mascot.colorHeading': 'Kolor',
|
||||
'settings.mascot.loadingLibrary': 'Wczytywanie biblioteki OpenHuman…',
|
||||
'settings.mascot.localDefault': 'Lokalny OpenHuman (domyślny)',
|
||||
'settings.mascot.menuTitle': 'Maskotka',
|
||||
'settings.mascot.menuDesc': 'Wybierz kolor maskotki używany w aplikacji',
|
||||
'settings.mascot.noCharacters': 'Nie ma jeszcze dostępnych postaci OpenHuman',
|
||||
'settings.mascot.noColorVariants': 'Brak wariantów kolorystycznych',
|
||||
'settings.mascot.voice.current': 'bieżący',
|
||||
'settings.mascot.voice.customDesc':
|
||||
'Znajdź ID głosów w api.elevenlabs.io/v1/voices lub w panelu ElevenLabs. Przechowywane jest tylko ID — Twój klucz API pozostaje na backendzie.',
|
||||
'settings.mascot.voice.customHeading': 'Własne ID głosu',
|
||||
'settings.mascot.voice.customOption': 'Inne (wklej ID głosu)…',
|
||||
'settings.mascot.voice.desc':
|
||||
'Wybierz głos ElevenLabs, którego maskotka używa do odpowiedzi głosowych. Filtruj po płci, wybierz z listy lub pozwól aplikacji dobrać głos pasujący do języka interfejsu.',
|
||||
'settings.mascot.voice.genderFemale': 'Kobiecy',
|
||||
'settings.mascot.voice.genderHeading': 'Płeć głosu',
|
||||
'settings.mascot.voice.genderMale': 'Męski',
|
||||
'settings.mascot.voice.heading': 'Głos',
|
||||
'settings.mascot.voice.preset': 'Preset głosu',
|
||||
'settings.mascot.voice.presetHeading': 'Preset głosu',
|
||||
'settings.mascot.voice.preview': 'Podgląd głosu',
|
||||
'settings.mascot.voice.previewError': 'Podgląd głosu nie powiódł się',
|
||||
'settings.mascot.voice.previewing': 'Odsłuchiwanie…',
|
||||
'settings.mascot.voice.reset': 'Przywróć domyślny',
|
||||
'settings.mascot.voice.useLocaleDefault': 'Dopasuj do języka aplikacji',
|
||||
'settings.mascot.voice.useLocaleDefaultDesc':
|
||||
'Automatyczny dobór głosu do bieżącego języka interfejsu.',
|
||||
// settings.memoryWindow
|
||||
'settings.memoryWindow.balanced.badge': 'Zalecane',
|
||||
'settings.memoryWindow.balanced.hint':
|
||||
'Rozsądna wartość domyślna — dobra ciągłość bez nadmiernych tokenów na każde uruchomienie.',
|
||||
'settings.memoryWindow.balanced.label': 'Zrównoważone',
|
||||
'settings.memoryWindow.description':
|
||||
'Ile zapamiętanego kontekstu OpenHuman wstrzykuje do każdego nowego uruchomienia agenta. Większe okno daje większą świadomość poprzednich rozmów, ale używa więcej tokenów — i kosztuje więcej — przy każdym uruchomieniu.',
|
||||
'settings.memoryWindow.extended.badge': 'Więcej kontekstu',
|
||||
'settings.memoryWindow.extended.hint':
|
||||
'Więcej długoterminowej pamięci wstrzykiwanej do każdego uruchomienia. Wyższy koszt tokenów na turę.',
|
||||
'settings.memoryWindow.extended.label': 'Rozszerzone',
|
||||
'settings.memoryWindow.maximum.badge': 'Najwyższy koszt',
|
||||
'settings.memoryWindow.maximum.hint':
|
||||
'Największe bezpieczne okno. Najlepsza ciągłość, znacząco wyższy rachunek za tokeny przy każdym uruchomieniu.',
|
||||
'settings.memoryWindow.maximum.label': 'Maksymalne',
|
||||
'settings.memoryWindow.minimal.badge': 'Najtańsze',
|
||||
'settings.memoryWindow.minimal.hint':
|
||||
'Najmniejsze okno pamięci. Najtańsze, najszybsze, najmniejsza ciągłość między uruchomieniami.',
|
||||
'settings.memoryWindow.minimal.label': 'Minimalne',
|
||||
'settings.memoryWindow.title': 'Okno pamięci długoterminowej',
|
||||
// settings.screenIntel
|
||||
'settings.screenIntel.permissions.accessibility': 'Dostępność',
|
||||
'settings.screenIntel.permissions.grantHint': 'System otworzy okno żądania uprawnień.',
|
||||
'settings.screenIntel.permissions.inputMonitoring': 'Monitorowanie wejścia',
|
||||
'settings.screenIntel.permissions.macosAppliesPrivacy': 'macOS stosuje politykę prywatności do:',
|
||||
'settings.screenIntel.permissions.openInputMonitoring': 'Żądanie…',
|
||||
'settings.screenIntel.permissions.refreshStatus': 'Odświeżanie…',
|
||||
'settings.screenIntel.permissions.refreshing': 'Odświeżanie…',
|
||||
'settings.screenIntel.permissions.requestAccessibility': 'Żądanie…',
|
||||
'settings.screenIntel.permissions.requestScreenRecording': 'Żądanie…',
|
||||
'settings.screenIntel.permissions.requesting': 'Żądanie…',
|
||||
'settings.screenIntel.permissions.restartRefresh': 'Restartowanie rdzenia…',
|
||||
'settings.screenIntel.permissions.restartingCore': 'Restartowanie rdzenia…',
|
||||
'settings.screenIntel.permissions.screenRecording': 'Nagrywanie ekranu',
|
||||
'settings.screenIntel.permissions.title': 'Uprawnienia',
|
||||
// skills.card
|
||||
'skills.card.moreActions': 'Więcej akcji',
|
||||
// skills.create
|
||||
'skills.create.allowedTools': 'Dozwolone narzędzia',
|
||||
'skills.create.author': 'Autor',
|
||||
'skills.create.authorPlaceholder': 'Twoje imię',
|
||||
'skills.create.commaSeparated': '(rozdzielone przecinkami)',
|
||||
'skills.create.createBtn': 'Utwórz umiejętność',
|
||||
'skills.create.createError': 'Nie udało się utworzyć umiejętności',
|
||||
'skills.create.creating': 'Tworzenie…',
|
||||
'skills.create.description': 'Opis',
|
||||
'skills.create.descriptionPlaceholder': 'Co robi ta umiejętność?',
|
||||
'skills.create.license': 'Licencja',
|
||||
'skills.create.name': 'Nazwa',
|
||||
'skills.create.namePlaceholder': 'np. Dziennik transakcji',
|
||||
'skills.create.scope': 'Zakres',
|
||||
'skills.create.scopeProjectHint': '/.openhuman/skills/',
|
||||
'skills.create.scopeUserHint':
|
||||
'Zapisane do ~/.openhuman/skills/<slug>/SKILL.md — dostępne we wszystkich przestrzeniach roboczych.',
|
||||
'skills.create.slugLabel': 'Etykieta slug',
|
||||
'skills.create.subtitle': 'SKILL.md',
|
||||
'skills.create.tags': 'Tagi',
|
||||
'skills.create.title': 'Nowa umiejętność',
|
||||
// skills.detail
|
||||
'skills.detail.allowedTools': 'Dozwolone narzędzia',
|
||||
'skills.detail.author': 'Autor',
|
||||
'skills.detail.bundledResources': 'Dołączone zasoby',
|
||||
'skills.detail.closeAriaLabel': 'Zamknij szczegóły umiejętności',
|
||||
'skills.detail.location': 'Lokalizacja',
|
||||
'skills.detail.noBundledResources': 'Brak dołączonych zasobów.',
|
||||
'skills.detail.tags': 'Tagi',
|
||||
'skills.detail.warnings': 'Ostrzeżenia',
|
||||
// skills.install
|
||||
'skills.install.fetchLog': 'Dziennik pobierania',
|
||||
'skills.install.installBtn': 'Instalowanie…',
|
||||
'skills.install.installComplete': 'Instalacja zakończona',
|
||||
'skills.install.installing': 'Instalowanie…',
|
||||
'skills.install.parseWarnings': 'Ostrzeżenia parsowania',
|
||||
'skills.install.rawError': 'Surowy błąd',
|
||||
'skills.install.timeoutHint': '(sekundy, opcjonalne)',
|
||||
'skills.install.timeoutLabel': 'Limit czasu',
|
||||
'skills.install.title': 'Zainstaluj umiejętność z URL',
|
||||
'skills.install.urlLabel': 'URL umiejętności',
|
||||
// skills.meetingBots
|
||||
'skills.meetingBots.bannerDesc':
|
||||
'Wklej link Google Meet, a OpenHuman dołączy jako gość, mówi, słucha i odpowiada.',
|
||||
'skills.meetingBots.bannerTitle': 'Wyślij OpenHuman na spotkanie',
|
||||
'skills.meetingBots.busyTitle': 'OpenHuman jest zajęty',
|
||||
'skills.meetingBots.comingSoon': 'Wkrótce',
|
||||
'skills.meetingBots.couldNotStartTitle': 'Nie udało się uruchomić OpenHuman',
|
||||
'skills.meetingBots.displayName': 'Wyświetlana nazwa',
|
||||
'skills.meetingBots.failedToStart': 'Nie udało się uruchomić OpenHuman.',
|
||||
'skills.meetingBots.joiningMessage': 'Powinien pojawić się jako uczestnik w ciągu kilku sekund.',
|
||||
'skills.meetingBots.joiningTitle': 'OpenHuman dołącza do spotkania',
|
||||
'skills.meetingBots.meetingLink': 'Link spotkania',
|
||||
'skills.meetingBots.modalAriaLabel': 'Wyślij OpenHuman na spotkanie',
|
||||
'skills.meetingBots.modalDesc':
|
||||
'OpenHuman dołącza jako anonimowy gość, transmituje wideo do rozmowy i odpowiada przez agenta.',
|
||||
'skills.meetingBots.modalTitle': 'Wyślij OpenHuman na spotkanie',
|
||||
'skills.meetingBots.newBadge': 'Nowość',
|
||||
'skills.meetingBots.sendTo': 'Wyślij do',
|
||||
'skills.meetingBots.starting': 'Uruchamianie…',
|
||||
// skills.resource
|
||||
'skills.resource.preview.closeAriaLabel': 'Zamknij podgląd',
|
||||
'skills.resource.preview.failed': 'Podgląd nie powiódł się',
|
||||
'skills.resource.preview.loading': 'Wczytywanie podglądu…',
|
||||
'skills.resource.tree.empty': 'Brak dołączonych zasobów.',
|
||||
'skills.search.placeholder': 'Szukaj umiejętności...',
|
||||
// skills.setup.autocomplete
|
||||
'skills.setup.autocomplete.acceptKey': 'Klawisz akceptacji',
|
||||
'skills.setup.autocomplete.activeDesc':
|
||||
'Autouzupełnianie działa. Akceptuj sugestie klawiszem skrótu.',
|
||||
'skills.setup.autocomplete.activeTitle': 'Autouzupełnianie jest aktywne',
|
||||
'skills.setup.autocomplete.customizeSettings': 'Dostosuj ustawienia',
|
||||
'skills.setup.autocomplete.debounce': 'Debounce',
|
||||
'skills.setup.autocomplete.description':
|
||||
'Sugestie wierszowe podczas pisania w polach tekstowych.',
|
||||
'skills.setup.autocomplete.enableBtn': 'Włączanie...',
|
||||
'skills.setup.autocomplete.enableError': 'Nie udało się włączyć autouzupełniania',
|
||||
'skills.setup.autocomplete.enabling': 'Włączanie...',
|
||||
'skills.setup.autocomplete.notSupported': 'Nieobsługiwane',
|
||||
'skills.setup.autocomplete.stepEnable': 'Włącz uzupełnienia wierszowe',
|
||||
'skills.setup.autocomplete.stepSuccess': 'Gotowe',
|
||||
'skills.setup.autocomplete.stylePreset': 'Preset stylu',
|
||||
'skills.setup.autocomplete.stylePresetValue': 'Zrównoważony (konfigurowalny później)',
|
||||
'skills.setup.autocomplete.title': 'Autouzupełnianie tekstu',
|
||||
// skills.setup.screenIntel
|
||||
'skills.setup.screenIntel.activeDesc': 'Inteligencja ekranu działa. Wybrane okna są obserwowane.',
|
||||
'skills.setup.screenIntel.activeTitle': 'Inteligencja ekranu jest włączona',
|
||||
'skills.setup.screenIntel.advancedSettings': 'Ustawienia zaawansowane',
|
||||
'skills.setup.screenIntel.allGranted': 'Wszystkie uprawnienia przyznane',
|
||||
'skills.setup.screenIntel.captureMode': 'Tryb przechwytywania',
|
||||
'skills.setup.screenIntel.captureModeValue': 'Wszystkie okna (konfigurowalne później)',
|
||||
'skills.setup.screenIntel.deniedHint':
|
||||
'Po przyznaniu uprawnień w Ustawieniach systemowych kliknij poniżej, aby zrestartować i odświeżyć zmiany.',
|
||||
'skills.setup.screenIntel.enableBtn': 'Włączanie...',
|
||||
'skills.setup.screenIntel.enableDesc':
|
||||
's na Twoim ekranie i dostarczają użytecznego kontekstu agentowi',
|
||||
'skills.setup.screenIntel.enableError': 'Nie udało się włączyć inteligencji ekranu',
|
||||
'skills.setup.screenIntel.enabling': 'Włączanie...',
|
||||
'skills.setup.screenIntel.grant': 'Otwieranie...',
|
||||
'skills.setup.screenIntel.granted': 'Przyznano',
|
||||
'skills.setup.screenIntel.macosOnly': 'Tylko macOS',
|
||||
'skills.setup.screenIntel.opening': 'Otwieranie...',
|
||||
'skills.setup.screenIntel.panicHotkey': 'Skrót awaryjny',
|
||||
'skills.setup.screenIntel.permAccessibility': 'Dostępność',
|
||||
'skills.setup.screenIntel.permInputMonitoring': 'Monitorowanie wejścia',
|
||||
'skills.setup.screenIntel.permScreenRecording': 'Nagrywanie ekranu',
|
||||
'skills.setup.screenIntel.permissionsDesc': 'Inteligencja ekranu wymaga uprawnień systemowych:',
|
||||
'skills.setup.screenIntel.refreshStatus': 'Odśwież status',
|
||||
'skills.setup.screenIntel.restartRefresh': 'Restartowanie...',
|
||||
'skills.setup.screenIntel.restarting': 'Restartowanie...',
|
||||
'skills.setup.screenIntel.stepEnable': 'Włącz umiejętność',
|
||||
'skills.setup.screenIntel.stepPermissions': 'Przyznaj uprawnienia',
|
||||
'skills.setup.screenIntel.stepSuccess': 'Gotowe',
|
||||
'skills.setup.screenIntel.title': 'Inteligencja ekranu',
|
||||
'skills.setup.screenIntel.visionModel': 'Model wizji',
|
||||
// skills.setup.voice
|
||||
'skills.setup.voice.activation': 'Aktywacja',
|
||||
'skills.setup.voice.activeDescPrefix': 'Fn',
|
||||
'skills.setup.voice.activeDescSuffix': 'Fn',
|
||||
'skills.setup.voice.activeTitle': 'Inteligencja głosowa jest aktywna',
|
||||
'skills.setup.voice.customizeSettings': 'Dostosuj ustawienia',
|
||||
'skills.setup.voice.downloadSttBtn': 'Pobierz model STT',
|
||||
'skills.setup.voice.enableDesc': 'Włącz dyktowanie głosowe i odpowiedzi głosowe.',
|
||||
'skills.setup.voice.hotkey': 'Skrót klawiszowy',
|
||||
'skills.setup.voice.startBtn': 'Uruchamianie...',
|
||||
'skills.setup.voice.startError': 'Nie udało się uruchomić serwera głosowego',
|
||||
'skills.setup.voice.starting': 'Uruchamianie...',
|
||||
'skills.setup.voice.stepEnable': 'Uruchom serwer głosowy',
|
||||
'skills.setup.voice.stepSetup': 'Wymagane pobranie modelu',
|
||||
'skills.setup.voice.stepSuccess': 'Gotowe',
|
||||
'skills.setup.voice.sttNotReady': 'Model speech-to-text niegotowy',
|
||||
'skills.setup.voice.sttNotReadyDesc':
|
||||
'Inteligencja głosowa wymaga lokalnego modelu Whisper do transkrypcji. Pobierz go z ustawień modelu lokalnego.',
|
||||
'skills.setup.voice.sttReady': 'Model speech-to-text gotowy',
|
||||
'skills.setup.voice.sttReturnHint': 'Wróć tutaj po pobraniu modelu.',
|
||||
'skills.setup.voice.title': 'Inteligencja głosowa',
|
||||
// skills.uninstall
|
||||
'skills.uninstall.couldNotUninstall': 'Nie udało się odinstalować',
|
||||
'skills.uninstall.description':
|
||||
'Permanentnie usuwa katalog umiejętności i wszystkie dołączone zasoby. Agent przestanie je widzieć w następnej turze.',
|
||||
'skills.uninstall.title': 'Odinstaluj',
|
||||
'skills.uninstall.uninstallBtn': 'Odinstaluj',
|
||||
'skills.uninstall.uninstalling': 'Odinstalowywanie…',
|
||||
// upsell
|
||||
'upsell.global.limitMessage': 'Podnieś plan lub doładuj kredyty, aby kontynuować',
|
||||
'upsell.global.limitTitle': 'Ty',
|
||||
'upsell.global.nearLimitMessage':
|
||||
'Wykorzystano {pct}% limitu użycia. Podnieś plan, aby zwiększyć limity.',
|
||||
'upsell.global.nearLimitTitle': 'Zbliżasz się do limitu użycia',
|
||||
'upsell.usageLimit.bodyBudget':
|
||||
'Osiągnięto tygodniowy limit.{reset} Podnieś plan lub doładuj kredyty, aby uniknąć limitów.',
|
||||
'upsell.usageLimit.bodyRate':
|
||||
'Osiągnięto 10-godzinny limit szybkości inferencji.{reset} Podnieś plan, aby zwiększyć limity.',
|
||||
'upsell.usageLimit.heading': 'Osiągnięto limit użycia',
|
||||
'upsell.usageLimit.notNow': 'Nie teraz',
|
||||
'upsell.usageLimit.perWindow': '{amount}',
|
||||
'upsell.usageLimit.planIncludes': '{plan}',
|
||||
'upsell.usageLimit.resetsIn': 'Resetuje się {time}.',
|
||||
'upsell.usageLimit.upgradePlan': 'Podnieś plan',
|
||||
'upsell.usageLimit.weeklyInference': '{amount}',
|
||||
// walkthrough
|
||||
'walkthrough.tooltip.letsGo': 'Zaczynamy!',
|
||||
'walkthrough.tooltip.next': 'Dalej →',
|
||||
'walkthrough.tooltip.skip': 'Pomiń przewodnik',
|
||||
'walkthrough.tooltip.stepCounter': '{n} z {total}',
|
||||
// webhooks
|
||||
'webhooks.activity.empty': 'Brak aktywności.',
|
||||
'webhooks.activity.title': 'Ostatnia aktywność',
|
||||
'webhooks.composioHistory.empty': 'Brak historii.',
|
||||
'webhooks.composioHistory.metadataId': 'ID metadanych',
|
||||
'webhooks.composioHistory.metadataUuid': 'UUID metadanych',
|
||||
'webhooks.composioHistory.payload': 'Ładunek',
|
||||
'webhooks.composioHistory.title': 'Historia wyzwalaczy ComposeIO',
|
||||
'webhooks.tunnels.active': 'Aktywny',
|
||||
'webhooks.tunnels.createFailed': 'Nie udało się utworzyć tunelu',
|
||||
'webhooks.tunnels.creating': 'Tworzenie...',
|
||||
'webhooks.tunnels.deleteFailed': 'Nie udało się usunąć tunelu',
|
||||
'webhooks.tunnels.descriptionPlaceholder': 'Opis (opcjonalny)',
|
||||
'webhooks.tunnels.echo': 'Echo',
|
||||
'webhooks.tunnels.empty': 'Brak tuneli.',
|
||||
'webhooks.tunnels.enableEcho': 'Usuń Echo',
|
||||
'webhooks.tunnels.inactive': 'Aktywny',
|
||||
'webhooks.tunnels.namePlaceholder': 'Nazwa tunelu (np. telegram-bot)',
|
||||
'webhooks.tunnels.newTunnel': 'Nowy tunel',
|
||||
'webhooks.tunnels.removeEcho': 'Usuń Echo',
|
||||
'webhooks.tunnels.title': 'Tunele webhooków',
|
||||
'webhooks.tunnels.toggleFailed': 'Nie udało się przełączyć echa',
|
||||
// composio (extras)
|
||||
'composio.authExpired': 'Autoryzacja wygasła',
|
||||
'composio.reconnect': 'Połącz ponownie',
|
||||
'composio.previewBadge': 'Podgląd',
|
||||
'composio.previewTooltip':
|
||||
'Integracja z agentem wkrótce — możesz się połączyć, ale agent nie może jeszcze użyć tego zestawu narzędzi.',
|
||||
'composio.directModeRequiresKey':
|
||||
'Nie udało się zapisać. Tryb bezpośredni wymaga niepustego klucza API.',
|
||||
'composio.notYetRouted': 'jeszcze nie trasowane',
|
||||
'composio.triggers.loading': 'Wczytywanie…',
|
||||
'conversations.taskKanban.todo': 'Do zrobienia',
|
||||
'settings.composio.loading': 'Wczytywanie…',
|
||||
'settings.mascot.noCharactersAvailable': 'Nie ma jeszcze dostępnych postaci OpenHuman',
|
||||
'skills.uninstall.confirmTitle': 'Odinstalować {name}?',
|
||||
'conversations.taskKanban.blocked': 'Zablokowane',
|
||||
'conversations.taskKanban.done': 'Zrobione',
|
||||
'conversations.taskKanban.inProgress': 'W toku',
|
||||
'intelligence.memoryChunk.detail.copiedHint': 'skopiowano',
|
||||
'settings.composio.notYetRouted': 'jeszcze nie trasowane',
|
||||
'settings.localModel.download.manageExternal':
|
||||
'Zarządzaj tym modelem w swoim zewnętrznym środowisku.',
|
||||
'settings.localModel.status.manageOllamaExternal':
|
||||
'Zarządzaj procesem Ollama i pobraniami modeli poza OpenHumanem, a następnie uruchom ponownie diagnostykę.',
|
||||
'settings.localModel.status.ollamaDocs': 'Dokumentacja Ollama',
|
||||
'settings.localModel.status.thenRetry':
|
||||
'po instrukcje konfiguracji, a następnie spróbuj ponownie, gdy środowisko będzie osiągalne.',
|
||||
// settings.appearance
|
||||
'settings.appearance.title': 'Wygląd',
|
||||
'settings.appearance.themeHeading': 'Motyw',
|
||||
'settings.appearance.themeAria': 'Motyw',
|
||||
'settings.appearance.modeLight': 'Jasny',
|
||||
'settings.appearance.modeLightDesc': 'Jasne powierzchnie, ciemny tekst.',
|
||||
'settings.appearance.modeDark': 'Ciemny',
|
||||
'settings.appearance.modeDarkDesc': 'Przyciemnione powierzchnie, łatwiejsze dla oczu po zmroku.',
|
||||
'settings.appearance.modeSystem': 'Dopasuj do systemu',
|
||||
'settings.appearance.modeSystemDesc':
|
||||
'Postępuj zgodnie z ustawieniem wyglądu Twojego systemu operacyjnego.',
|
||||
'settings.appearance.helperText':
|
||||
'Tryb ciemny przełącza całą aplikację — czat, ustawienia, panele — na przyciemnioną paletę. „Dopasuj do systemu” podąża za wyglądem systemu i aktualizuje się na żywo.',
|
||||
'settings.appearance.tabBarHeading': 'Dolny pasek zakładek',
|
||||
'settings.appearance.tabBarAlwaysShowLabels': 'Zawsze pokazuj etykiety',
|
||||
'settings.appearance.tabBarAlwaysShowLabelsDesc':
|
||||
'Wyłączone — etykiety pojawiają się tylko po najechaniu lub dla aktywnej zakładki.',
|
||||
// settings.mascot (more)
|
||||
'settings.mascot.characterPreview': 'Podgląd',
|
||||
'settings.mascot.characterStates': 'stanów',
|
||||
'settings.mascot.characterVisemes': 'wizemów',
|
||||
'settings.mascot.colorAria': 'Kolor OpenHuman',
|
||||
'settings.mascot.colorBlack': 'Czarny',
|
||||
'settings.mascot.colorBurgundy': 'Burgundowy',
|
||||
'settings.mascot.colorCustom': 'Własny',
|
||||
'settings.mascot.colorNavy': 'Granatowy',
|
||||
'settings.mascot.primaryColor': 'Kolor podstawowy',
|
||||
'settings.mascot.secondaryColor': 'Kolor dodatkowy',
|
||||
'settings.mascot.colorYellow': 'Żółty',
|
||||
'settings.mascot.libraryUnavailable': 'Biblioteka OpenHuman niedostępna',
|
||||
'settings.mascot.title': 'OpenHuman',
|
||||
// settings.developerMenu (more)
|
||||
'settings.developerMenu.mcpServer.title': 'Serwer MCP',
|
||||
'settings.developerMenu.mcpServer.desc':
|
||||
'Skonfiguruj zewnętrznych klientów MCP do połączenia z OpenHumanem',
|
||||
'settings.developerMenu.autonomy.title': 'Autonomia agenta',
|
||||
'settings.developerMenu.autonomy.desc': 'Limity szybkości akcji narzędzi i progi bezpieczeństwa',
|
||||
// settings.mcpServer
|
||||
'settings.mcpServer.title': 'Serwer MCP',
|
||||
'settings.mcpServer.toolsSectionTitle': 'Dostępne narzędzia',
|
||||
'settings.mcpServer.toolsSectionDesc':
|
||||
'Narzędzia udostępniane przez serwer stdio MCP podczas uruchamiania openhuman-core mcp',
|
||||
'settings.mcpServer.configSectionTitle': 'Konfiguracja klienta',
|
||||
'settings.mcpServer.configSectionDesc':
|
||||
'Wybierz swojego klienta MCP, aby wygenerować poprawny fragment konfiguracji',
|
||||
'settings.mcpServer.copySnippet': 'Skopiuj do schowka',
|
||||
'settings.mcpServer.copied': 'Skopiowano!',
|
||||
'settings.mcpServer.openConfigFile': 'Otwórz plik konfiguracyjny',
|
||||
'settings.mcpServer.binaryPathNotFound':
|
||||
'Nie znaleziono pliku binarnego OpenHuman. Jeśli uruchamiasz ze źródeł, zbuduj: cargo build --bin openhuman-core',
|
||||
'settings.mcpServer.openConfigError': 'Nie udało się otworzyć pliku konfiguracyjnego',
|
||||
'settings.mcpServer.clientClaudeDesktop': 'Claude Desktop',
|
||||
'settings.mcpServer.clientCursor': 'Cursor',
|
||||
'settings.mcpServer.clientCodex': 'Codex',
|
||||
'settings.mcpServer.clientZed': 'Zed',
|
||||
'settings.mcpServer.configFilePath': 'Plik konfiguracyjny',
|
||||
'settings.mcpServer.clientSelectorAriaLabel': 'Selektor klienta MCP',
|
||||
// settings.persona
|
||||
'settings.persona.title': 'Persona',
|
||||
'settings.persona.menuTitle': 'Persona',
|
||||
'settings.persona.menuDesc':
|
||||
'Imię, osobowość, awatar i głos — Twój asystent jako jedna tożsamość',
|
||||
'settings.persona.identityHeading': 'Tożsamość',
|
||||
'settings.persona.identityDesc':
|
||||
'Wyświetlana nazwa i krótki opis Twojego asystenta. Pokazane w aplikacji; nie zmienia sposobu rozumowania asystenta.',
|
||||
'settings.persona.displayNameLabel': 'Wyświetlana nazwa',
|
||||
'settings.persona.displayNamePlaceholder': 'np. Nova',
|
||||
'settings.persona.descriptionLabel': 'Opis',
|
||||
'settings.persona.descriptionPlaceholder': 'np. Spokojny, zwięzły asystent dla mojego zespołu.',
|
||||
'settings.persona.soul.heading': 'Osobowość (SOUL.md)',
|
||||
'settings.persona.soul.desc':
|
||||
'Prompt osobowości, którym asystent kieruje się w każdej rozmowie. Edycje są zapisywane w Twojej przestrzeni roboczej i wchodzą w życie w następnej odpowiedzi.',
|
||||
'settings.persona.soul.editorLabel': 'Zawartość SOUL.md',
|
||||
'settings.persona.soul.reset': 'Przywróć domyślne',
|
||||
'settings.persona.soul.usingDefault': 'Używam dołączonej wartości domyślnej',
|
||||
'settings.persona.soul.loadError': 'Nie udało się wczytać SOUL.md',
|
||||
'settings.persona.soul.saveError': 'Nie udało się zapisać SOUL.md',
|
||||
'settings.persona.soul.resetError': 'Nie udało się zresetować SOUL.md',
|
||||
'settings.persona.appearanceHeading': 'Awatar i głos',
|
||||
'settings.persona.appearanceDesc':
|
||||
'Kolor maskotki, własny awatar GIF i głos odpowiedzi są konfigurowane w ustawieniach Maskotki.',
|
||||
'settings.persona.openMascotSettings': 'Otwórz ustawienia Maskotki',
|
||||
// common (extras)
|
||||
'common.breadcrumb': 'Ścieżka nawigacji',
|
||||
'settings.betaBuild': 'Wersja beta - v{version}',
|
||||
// migration (extras)
|
||||
'migration.vendor.openclaw': 'OpenClaw',
|
||||
'migration.vendor.hermes': 'Hermes Agent (wkrótce)',
|
||||
// onboarding.apiKeys
|
||||
'onboarding.apiKeys.openaiOauthHint':
|
||||
'Użyj ChatGPT Plus/Pro (subskrypcja) lub klucza API OpenAI — nie potrzeba obu.',
|
||||
'onboarding.apiKeys.openaiOauthOpening': 'Otwieranie logowania…',
|
||||
'onboarding.apiKeys.finishSignIn': 'Dokończ logowanie ChatGPT',
|
||||
'onboarding.apiKeys.orApiKey': 'lub klucz API',
|
||||
// app
|
||||
'app.localAiDownload.expandAria': 'Rozwiń postęp pobierania',
|
||||
'app.localAiDownload.collapseAria': 'Zwiń postęp pobierania',
|
||||
'app.localAiDownload.dismissAria': 'Odrzuć powiadomienie o pobieraniu',
|
||||
// mobile / progress
|
||||
'mobile.nav.ariaLabel': 'Nawigacja mobilna',
|
||||
'progress.stepsAria': 'Kroki postępu',
|
||||
'progress.stepAria': 'Krok {current} z {total}',
|
||||
// workspace.vaults
|
||||
'workspace.vaultsTitle': 'Sejfy wiedzy',
|
||||
'workspace.vaultsDesc':
|
||||
'Wskaż lokalny folder; pliki są dzielone na fragmenty i zwierciadłowo odzwierciedlane w pamięci.',
|
||||
// calls (extras)
|
||||
'calls.title': 'Rozmowy',
|
||||
'calls.comingSoonBody': 'Rozmowy wspomagane przez AI są już wkrótce. Pozostań w kontakcie.',
|
||||
// art / dev / composio expired
|
||||
'art.rotatingTetrahedronAria': 'Obracający się odwrócony statek tetraedryczny',
|
||||
'devOptions.sentryDisabled': '(brak ID — Sentry wyłączone w tej kompilacji)',
|
||||
'composio.expiredAuthorization': 'Autoryzacja {name} wygasła',
|
||||
'composio.expiredDescription':
|
||||
'Połącz ponownie, aby ponownie włączyć narzędzia {name}. OpenHuman utrzyma tę integrację jako niedostępną, dopóki nie odświeżysz dostępu OAuth.',
|
||||
'channels.telegram.remoteControlTitle': 'Sterowanie zdalne (Telegram)',
|
||||
'channels.telegram.remoteControlBody':
|
||||
'Z dozwolonego czatu Telegram wyślij /status, /sessions, /new lub /help. Trasowanie modelu nadal używa /model i /models.',
|
||||
'rewards.referralSection.retry': 'Ponów',
|
||||
// settings.ai (more)
|
||||
'settings.ai.plannerSummary':
|
||||
'Planner: {sourceEvents} zdarzeń źródłowych, {sent} wysłanych, {deduped} zdeduplikowanych.',
|
||||
'settings.ai.routeLabel': 'trasa: {route}',
|
||||
'settings.ai.latestSpend': 'Ostatni wydatek: {amount} o {time} ({action})',
|
||||
'settings.ai.topActions': 'Najczęstsze akcje',
|
||||
'settings.ai.noSpendRows': 'Brak załadowanych wierszy wydatków.',
|
||||
'settings.ai.topHours': 'Najczęstsze godziny',
|
||||
'settings.ai.noHourlySpend': 'Brak wydatków godzinowych.',
|
||||
// settings.autocomplete.appFilter (more)
|
||||
'settings.autocomplete.appFilter.app': 'Aplikacja',
|
||||
'settings.autocomplete.appFilter.currentSuggestion': 'Bieżąca sugestia',
|
||||
'settings.autocomplete.appFilter.debounce': 'Debounce',
|
||||
'settings.autocomplete.appFilter.enabled': 'Włączone',
|
||||
'settings.autocomplete.appFilter.lastError': 'Ostatni błąd',
|
||||
'settings.autocomplete.appFilter.model': 'Model',
|
||||
'settings.autocomplete.appFilter.phase': 'Faza',
|
||||
'settings.autocomplete.appFilter.platformSupported': 'Platforma obsługiwana',
|
||||
'settings.autocomplete.appFilter.running': 'Działa',
|
||||
// settings.autocomplete.debug
|
||||
'settings.autocomplete.debug.acceptedPrefix': 'Zaakceptowano: {value}',
|
||||
'settings.autocomplete.debug.acceptFailed': 'Nie udało się zaakceptować sugestii',
|
||||
'settings.autocomplete.debug.alreadyRunning': 'Autouzupełnianie już działa.',
|
||||
'settings.autocomplete.debug.clearHistoryFailed': 'Nie udało się wyczyścić historii',
|
||||
'settings.autocomplete.debug.didNotStart': 'Autouzupełnianie nie wystartowało.',
|
||||
'settings.autocomplete.debug.disabledInSettings':
|
||||
'Autouzupełnianie jest wyłączone w ustawieniach. Włącz je i zapisz najpierw.',
|
||||
'settings.autocomplete.debug.fetchSuggestionFailed': 'Nie udało się pobrać bieżącej sugestii',
|
||||
'settings.autocomplete.debug.inspectFocusedElementFailed':
|
||||
'Nie udało się zbadać aktywnego elementu',
|
||||
'settings.autocomplete.debug.loadSettingsFailed':
|
||||
'Nie udało się wczytać ustawień autouzupełniania',
|
||||
'settings.autocomplete.debug.noSuggestionApplied': 'Nie zastosowano sugestii.',
|
||||
'settings.autocomplete.debug.noSuggestionReturned': 'Nie zwrócono sugestii.',
|
||||
'settings.autocomplete.debug.refreshStatusFailed':
|
||||
'Nie udało się odświeżyć statusu autouzupełniania',
|
||||
'settings.autocomplete.debug.saveAdvancedSettingsFailed':
|
||||
'Nie udało się zapisać ustawień zaawansowanych',
|
||||
'settings.autocomplete.debug.startFailed': 'Nie udało się uruchomić autouzupełniania',
|
||||
'settings.autocomplete.debug.stopFailed': 'Nie udało się zatrzymać autouzupełniania',
|
||||
'settings.autocomplete.debug.suggestionPrefix': 'Sugestia: {value}',
|
||||
'settings.autocomplete.shared.none': 'Brak',
|
||||
'settings.autocomplete.shared.notApplicable': 'nd.',
|
||||
'settings.autocomplete.shared.unknown': 'Nieznane',
|
||||
// settings.billing.autoRecharge (more)
|
||||
'settings.billing.autoRecharge.expires': 'Wygasa {date}',
|
||||
'settings.billing.autoRecharge.spentThisWeek': 'Wykorzystano ${spent} z ${limit} w tym tygodniu',
|
||||
// settings.localModel.deviceCapability (extras)
|
||||
'settings.localModel.deviceCapability.disabledLowercase': 'wyłączone',
|
||||
'settings.localModel.deviceCapability.presetDetails':
|
||||
'Czat: {chatModel} · Wizja: {visionModel} · Docelowy RAM: {targetRamGb} GB',
|
||||
'settings.localModel.download.capabilityChat': 'Czat',
|
||||
'settings.localModel.download.capabilityEmbedding': 'Embedding',
|
||||
'settings.localModel.download.capabilityStt': 'STT',
|
||||
'settings.localModel.download.capabilityTts': 'TTS',
|
||||
'settings.localModel.download.capabilityVision': 'Wizja',
|
||||
'settings.localModel.download.embeddingDimensions': 'Wymiary: {dimensions}',
|
||||
'settings.localModel.download.embeddingModel': 'Model: {modelId}',
|
||||
'settings.localModel.download.embeddingVectors': 'Wektory: {count}',
|
||||
'settings.localModel.download.notAvailable': 'nd.',
|
||||
'settings.localModel.download.summaryHelper':
|
||||
'Wywołuje `openhuman.inference_summarize` przez rdzeń Rust',
|
||||
'settings.localModel.download.transcript': 'Transkrypcja:',
|
||||
'settings.localModel.download.ttsOutput': 'Wyjście: {outputPath}',
|
||||
'settings.localModel.download.ttsVoice': 'Głos: {voiceId}',
|
||||
// settings.localModel.status (extras)
|
||||
'settings.localModel.status.contextBelowMinimumBadge':
|
||||
'{contextLength} ctx - poniżej minimum {required}',
|
||||
'settings.localModel.status.contextBelowMinimumTitle':
|
||||
'Odrzucone: okno kontekstu {contextLength} tokenów jest poniżej minimum {required} tokenów wymaganego przez warstwę pamięci. Cichy obcięcie kontekstu uszkodziłoby recall.',
|
||||
'settings.localModel.status.contextOkBadge': '{contextLength} ctx ✓',
|
||||
'settings.localModel.status.contextOkTitle':
|
||||
'Okno kontekstu {contextLength} tokenów spełnia minimum warstwy pamięci wynoszące {required} tokenów.',
|
||||
'settings.localModel.status.contextUnknownBadge': 'ctx nieznane',
|
||||
'settings.localModel.status.contextUnknownTitle':
|
||||
'Okno kontekstu nieznane; nie udało się potwierdzić, że spełnia minimum {required} tokenów warstwy pamięci.',
|
||||
'settings.localModel.status.expectedChat': 'Czat: {model}',
|
||||
'settings.localModel.status.expectedEmbedding': 'Embedding: {model}',
|
||||
'settings.localModel.status.expectedVision': 'Wizja: {model}',
|
||||
'settings.localModel.status.externalProcess': 'Zewnętrzny proces',
|
||||
'settings.localModel.status.notAvailable': 'nd.',
|
||||
'settings.mascot.customGifPlaceholder': 'https://example.com/avatar.gif',
|
||||
'settings.mascot.loadDetailError': 'Nie udało się wczytać maskotki.',
|
||||
'settings.mascot.loadLibraryError': 'Nie udało się wczytać biblioteki maskotek.',
|
||||
'settings.mascot.voice.customPlaceholder': 'np. 21m00Tcm4TlvDq8ikWAM',
|
||||
'settings.mascot.voice.previewText': 'Cześć, jestem Twoim asystentem. To jest podgląd głosu.',
|
||||
// skills (channel icons / composio / create extras / install errors)
|
||||
'skills.channelIcon.discord': 'Discord',
|
||||
'skills.channelIcon.imessage': 'iMessage',
|
||||
'skills.channelIcon.telegram': 'Telegram',
|
||||
'skills.channelIcon.web': 'Sieć',
|
||||
'skills.channelIcon.yuanbao': 'Yuanbao',
|
||||
'skills.composio.poweredBy': 'Napędzane przez Composio',
|
||||
'skills.composio.staleStatusTitle': 'Połączenia pokazują nieaktualny status',
|
||||
'skills.create.allowedToolsHelp': 'Renderowane do nagłówka frontmatter SKILL.md jako',
|
||||
'skills.create.allowedToolsPlaceholder': 'node_exec, fetch',
|
||||
'skills.create.licensePlaceholder': 'MIT',
|
||||
'skills.create.tagsPlaceholder': 'handel, badania',
|
||||
'skills.install.errors.alreadyInstalledHint':
|
||||
'Umiejętność z tym slugiem już istnieje w przestrzeni roboczej. Usuń ją najpierw lub zmień `metadata.id` / `name` w frontmatter.',
|
||||
'skills.install.errors.alreadyInstalledTitle': 'Umiejętność już zainstalowana',
|
||||
'skills.install.errors.fetchFailedHint':
|
||||
'Żądanie nie zostało zrealizowane pomyślnie. Sprawdź, że URL wskazuje na osiągalny plik publiczny i że host zwrócił odpowiedź 2xx.',
|
||||
'skills.install.errors.fetchFailedTitle': 'Pobieranie nie powiodło się',
|
||||
'skills.install.errors.fetchTimedOutHint':
|
||||
'Zdalny host nie odpowiedział w czasie. Spróbuj ponownie lub zwiększ limit czasu (1-600 s).',
|
||||
'skills.install.errors.fetchTimedOutTitle': 'Przekroczono limit czasu pobierania',
|
||||
'skills.install.errors.fetchTooLargeHint':
|
||||
'SKILL.md musi mieć poniżej 1 MiB. Podziel dołączone zasoby na pliki `references/` lub `scripts/` zamiast wstawiać je inline.',
|
||||
'skills.install.errors.fetchTooLargeTitle': 'SKILL.md zbyt duży',
|
||||
'skills.install.errors.genericHint': 'Backend zwrócił błąd. Surowa wiadomość pokazana poniżej.',
|
||||
'skills.install.errors.genericTitle': 'Nie udało się zainstalować umiejętności',
|
||||
'skills.install.errors.invalidSkillHint':
|
||||
'Frontmatter musi być poprawnym YAML-em z niepustymi polami `name` i `description`, zakończonym `---`.',
|
||||
'skills.install.errors.invalidSkillTitle': 'SKILL.md nie został sparsowany',
|
||||
'skills.install.errors.invalidUrlHint':
|
||||
'Dozwolone są tylko publiczne adresy HTTPS. Prywatne, loopback i metadanowe hosty są zablokowane.',
|
||||
'skills.install.errors.invalidUrlTitle': 'URL odrzucony',
|
||||
'skills.install.errors.unsupportedUrlHint':
|
||||
'Działają tylko bezpośrednie linki `.md`. Dla GitHuba linkuj do pliku (github.com/owner/repo/blob/.../SKILL.md) — drzewa i korzenie repo nie są instalowane.',
|
||||
'skills.install.errors.unsupportedUrlTitle': 'Forma URL nieobsługiwana',
|
||||
'skills.install.errors.writeFailedHint':
|
||||
'Katalog umiejętności w przestrzeni roboczej nie był zapisywalny. Sprawdź uprawnienia systemu plików dla `<workspace>/.openhuman/skills/`.',
|
||||
'skills.install.errors.writeFailedTitle': 'Nie udało się zapisać SKILL.md',
|
||||
'skills.install.fetchingPrefix': 'Pobieranie',
|
||||
'skills.install.fetchingSuffix': 'może to potrwać do skonfigurowanego limitu czasu.',
|
||||
'skills.install.subtitleMiddle': 'przez HTTPS i instaluje pod',
|
||||
'skills.install.subtitlePrefix': 'Pobiera pojedynczy',
|
||||
'skills.install.subtitleSuffix': 'tylko HTTPS; prywatne i loopback hosty są zablokowane.',
|
||||
'skills.install.successDiscovered': 'Odkryto {count} nowych umiejętności.',
|
||||
'skills.install.successNoNewIds':
|
||||
'Umiejętność zainstalowana, ale nie pojawiły się nowe ID — katalog może już zawierać umiejętność z tym samym slugiem.',
|
||||
'skills.install.timeoutHelp':
|
||||
'Domyślnie 60 sekund. Wartości spoza zakresu 1-600 są ograniczane po stronie serwera.',
|
||||
'skills.install.timeoutInvalid': 'Musi być liczbą całkowitą między 1 a 600.',
|
||||
'skills.install.timeoutPlaceholder': '60',
|
||||
'skills.install.urlHelpMiddle': 'plik.',
|
||||
'skills.install.urlHelpPrefix': 'Bezpośredni link do',
|
||||
'skills.install.urlHelpSuffix': 'URL-e przepisują się na',
|
||||
'skills.install.urlInvalidPrefix': 'URL musi być poprawnie sformułowanym',
|
||||
'skills.install.urlInvalidSuffix': 'linkiem.',
|
||||
'skills.install.urlPlaceholder': 'https://raw.githubusercontent.com/owner/repo/main/SKILL.md',
|
||||
'skills.meetingBots.platformComingSoon': 'Obsługa {label} jest już wkrótce.',
|
||||
'skills.meetingBots.platformHints.gmeet': 'meet.google.com/abc-defg-hij',
|
||||
'skills.meetingBots.platformHints.teams': 'teams.microsoft.com/...',
|
||||
'skills.meetingBots.platformHints.zoom': 'zoom.us/j/...',
|
||||
'skills.meetingBots.platforms.gmeet': 'Google Meet',
|
||||
'skills.meetingBots.platforms.teams': 'Microsoft Teams',
|
||||
'skills.meetingBots.platforms.zoom': 'Zoom',
|
||||
'skills.meetingBots.soonSuffix': 'wkrótce',
|
||||
'skills.setup.screenIntel.permissionPathLabel': 'macOS stosuje politykę prywatności do:',
|
||||
};
|
||||
|
||||
export default pl5;
|
||||
@@ -0,0 +1,32 @@
|
||||
import pl1 from './chunks/pl-1';
|
||||
import pl2 from './chunks/pl-2';
|
||||
import pl3 from './chunks/pl-3';
|
||||
import pl4 from './chunks/pl-4';
|
||||
import pl5 from './chunks/pl-5';
|
||||
import type { TranslationMap } from './types';
|
||||
|
||||
// Polish (Polski) translations. Each chunk maps to chunks/en-N.ts.
|
||||
// Missing keys fall back to English via I18nContext.resolveEn().
|
||||
const pl: TranslationMap = {
|
||||
...pl1,
|
||||
...pl2,
|
||||
...pl3,
|
||||
...pl4,
|
||||
...pl5,
|
||||
'skills.composio.noApiKeyTitle': 'Brak skonfigurowanego klucza API Composio',
|
||||
'skills.composio.noApiKeyDescription':
|
||||
'W trybie lokalnym używany jest Twój własny klucz API Composio. Otwórz Ustawienia → Zaawansowane → Composio, aby dodać klucz, zanim podłączysz tutaj integracje.',
|
||||
'skills.composio.noApiKeyCta': 'Otwórz ustawienia',
|
||||
'channels.localManagedUnavailable':
|
||||
'Kanały zarządzane są niedostępne dla użytkowników lokalnych.',
|
||||
'rewards.localUnavailable':
|
||||
'Logowanie lokalne nie zbiera nagród, voucherów ani środków z poleceń. Wyloguj się i zaloguj kontem OpenHuman, jeśli zależy Ci na nagrodach.',
|
||||
'rewards.localUnavailableCta': 'Otwórz ustawienia konta',
|
||||
'settings.search.localManagedUnavailable':
|
||||
'Wyszukiwarka zarządzana przez OpenHuman jest niedostępna dla użytkowników lokalnych. Dodaj własny klucz API Parallel lub Brave, aby włączyć wyszukiwanie w sieci.',
|
||||
'devices.comingSoonDescription':
|
||||
'Parowanie urządzeń pojawi się wkrótce. Ta strona będzie służyć do parowania iPhone’ów i zarządzania połączonymi urządzeniami.',
|
||||
'welcome.continueLocallyExperimental': 'Kontynuuj lokalnie (Eksperymentalne)',
|
||||
};
|
||||
|
||||
export default pl;
|
||||
@@ -11,7 +11,8 @@ export type Locale =
|
||||
| 'ru'
|
||||
| 'id'
|
||||
| 'it'
|
||||
| 'ko';
|
||||
| 'ko'
|
||||
| 'pl';
|
||||
|
||||
export interface TranslationMap {
|
||||
[key: string]: string;
|
||||
|
||||
@@ -19,6 +19,7 @@ const PREFIX_TO_LOCALE: Array<[string, Locale]> = [
|
||||
['id', 'id'],
|
||||
['in', 'id'],
|
||||
['it', 'it'],
|
||||
['pl', 'pl'],
|
||||
['en', 'en'],
|
||||
];
|
||||
|
||||
|
||||
@@ -46,6 +46,7 @@ const ALL_LOCALES = [
|
||||
"ru",
|
||||
"id",
|
||||
"it",
|
||||
"pl",
|
||||
] as const;
|
||||
type Locale = (typeof ALL_LOCALES)[number];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user