# Copyright (C) 2026 Mateusz Skorupa
# This file is distributed under the GPLv2 or later.
msgid ""
msgstr ""
"Project-Id-Version: Webhook Actions - build automations and integrations "
"with AI help 3.2.0\n"
"Report-Msgid-Bugs-To: "
"https://wordpress.org/support/plugin/flowsystems-webhook-actions\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"POT-Creation-Date: 2026-09-12T18:16:49+00:00\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"X-Generator: WP-CLI 2.12.0\n"
"X-Domain: flowsystems-webhook-actions\n"
"Language: pl_PL\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && "
"(n%100<10 || n%100>=20) ? 1 : 2);\n"

#: src/Abilities/AbilityRegistrar.php:128
#. translators: %s: ability name
#, php-format
msgid ""
"\"%s\" changes or deletes live data. Re-send the same call with "
"\"confirmed\": true once a human has approved it."
msgstr ""
"„%s” zmienia lub usuwa dane produkcyjne. Wyślij to samo wywołanie ponownie "
"z \"confirmed\": true, gdy człowiek je zatwierdzi."

#: admin/src/components/ImportDialog.vue
msgid "%1$d webhook(s) and %2$d chain(s) to import."
msgstr "%1$d webhook(ów) i %2$d łańcuch(ów) do zaimportowania."

#: admin/src/views/ExternalCronView.vue
msgid "%1$dh %2$dm"
msgstr "%1$dh %2$dm"

#: admin/src/views/ExternalCronView.vue
msgid "%1$dm %2$ds"
msgstr "%1$dm %2$ds"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "%1$s %2$d min"
msgstr "%1$s %2$d min"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "%1$s %2$ds"
msgstr "%1$s %2$ds"

#: src/Services/RestRouteInspector.php:74
#. translators: 1: HTTP method, 2: route path, 3: comma-separated allowed methods
#, php-format
msgid "%1$s is not supported on %2$s. Supported methods: %3$s."
msgstr "%1$s nie jest obsługiwane dla %2$s. Obsługiwane metody: %3$s."

#: admin/src/views/ExternalCronView.vue
msgid ""
"%1$s/wp-cron.php?doing_wp_cron%2$s — runs all WordPress scheduled tasks. "
"Min interval: 60s. %1$sDISABLE_WP_CRON%2$s is added to "
"%1$swp-config.php%2$s automatically."
msgstr ""
"%1$s/wp-cron.php?doing_wp_cron%2$s — uruchamia wszystkie zaplanowane "
"zadania WordPress. Min. interwał: 60 s. %1$sDISABLE_WP_CRON%2$s jest "
"automatycznie dodawane do %1$swp-config.php%2$s."

#: admin/src/views/ExternalCronView.vue
msgid ""
"%1$s/wp-json/fswa/v1/cron/process?token=…%2$s — processes only the webhook "
"queue. Min interval: 20s."
msgstr ""
"%1$s/wp-json/fswa/v1/cron/process?token=…%2$s — przetwarza tylko kolejkę "
"webhooków. Min. interwał: 20 s."

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"%1$sAvailable variables:%2$s %3$s$payload%4$s (mapped array), %3$s$args%4$s "
"(%5$s$payload['args']%6$s)"
msgstr ""
"%1$sDostępne zmienne:%2$s %3$s$payload%4$s (zmapowana tablica), "
"%3$s$args%4$s (%5$s$payload['args']%6$s)"

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"%1$sAvailable variables:%2$s %3$s$payload%4$s (sent), "
"%3$s$originalPayload%4$s (pre-mapping), %3$s$responseCode%4$s, "
"%3$s$responseBody%4$s"
msgstr ""
"%1$sDostępne zmienne:%2$s %3$s$payload%4$s (wysłany), "
"%3$s$originalPayload%4$s (przed mapowaniem), %3$s$responseCode%4$s, "
"%3$s$responseBody%4$s"

#: admin/src/views/ExternalCronView.vue
msgid "%1$sDISABLE_WP_CRON%2$s is active — WP-Cron auto-spawn is disabled."
msgstr ""
"%1$sDISABLE_WP_CRON%2$s jest aktywne — automatyczne uruchamianie WP-Cron "
"jest wyłączone."

#: admin/src/views/ExternalCronView.vue
msgid "%1$sDISABLE_WP_CRON%2$s will be written to %1$swp-config.php%2$s on save."
msgstr ""
"%1$sDISABLE_WP_CRON%2$s zostanie zapisane w %1$swp-config.php%2$s podczas "
"zapisywania."

#: admin/src/views/VaultView.vue
msgid ""
"%1$sFSWA_SECRET_KEY%2$s is defined and your credentials still work, but a "
"copy of the old key remains in the database — so you don't yet get the full "
"benefit. Re-encrypt now to seal every secret with the wp-config key and "
"delete the database key."
msgstr ""
"%1$sFSWA_SECRET_KEY%2$s jest zdefiniowany i Twoje uwierzytelnienia nadal "
"działają, ale kopia starego klucza pozostaje w bazie danych — więc nie "
"korzystasz jeszcze z pełnej ochrony. Zaszyfruj ponownie, aby zabezpieczyć "
"każdy sekret kluczem z wp-config i usunąć klucz z bazy danych."

#: admin/src/views/VaultView.vue
msgid ""
"%1$sFormat:%2$s any long, random, secret string (64+ characters "
"recommended). Generate one from the %3$sWordPress salt generator%4$s or "
"with %5$swp_generate_password(64, true, true)%6$s."
msgstr ""
"%1$sFormat:%2$s dowolny długi, losowy, tajny ciąg (zalecane 64+ znaków). "
"Wygeneruj go za pomocą %3$sgeneratora soli WordPress%4$s lub funkcji "
"%5$swp_generate_password(64, true, true)%6$s."

#: admin/src/views/VaultView.vue
msgid ""
"%1$sKeep it stable &amp; backed up:%2$s don't change or lose this value "
"once credentials are sealed with it, or they become unrecoverable."
msgstr ""
"%1$sUtrzymuj go stabilnie i twórz kopie zapasowe:%2$s nie zmieniaj ani nie "
"trać tej wartości po zabezpieczeniu nią uwierzytelnień, w przeciwnym razie "
"staną się nieodzyskiwalne."

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"%1$sOrder:%2$s field mapping runs first, then this snippet — so "
"%3$s$payload%4$s here is the %5$spost-mapping%6$s payload, exactly as at "
"dispatch."
msgstr ""
"%1$sKolejność:%2$s najpierw działa mapowanie pól, potem ten fragment — więc "
"%3$s$payload%4$s jest tutaj ładunkiem %5$spo mapowaniu%6$s, dokładnie tak "
"jak przy wysyłce."

#: admin/src/views/ProView.vue
msgid "%1$sPriority support%2$s — Pro subscribers get a direct response via email."
msgstr ""
"%1$sPriorytetowe wsparcie%2$s — subskrybenci Pro otrzymują bezpośrednią "
"odpowiedź e-mailem."

#: admin/src/views/VaultView.vue
msgid ""
"%1$sSafe to add anytime:%2$s existing credentials keep working immediately. "
"After adding it, return here and click the %3$sRe-encrypt%4$s button that "
"appears to finish the move and remove the database key."
msgstr ""
"%1$sMożna dodać w każdej chwili:%2$s istniejące uwierzytelnienia od razu "
"działają. Po dodaniu wróć tutaj i kliknij przycisk %3$sZaszyfruj "
"ponownie%4$s, który się pojawi, aby dokończyć przeniesienie i usunąć klucz "
"z bazy danych."

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"%1$sShorthand:%2$s works for any variable, e.g. %3$s{{ $args.0.field }}%4$s "
"→ %3$s$args[0]['field']%4$s, %3$s{{ $payload.key }}%4$s → "
"%3$s$payload['key']%4$s"
msgstr ""
"%1$sSkrót:%2$s działa dla dowolnej zmiennej, np. %3$s{{ $args.0.field "
"}}%4$s → %3$s$args[0]['field']%4$s, %3$s{{ $payload.key }}%4$s → "
"%3$s$payload['key']%4$s"

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"%1$sShorthand:%2$s works for any variable, e.g. %3$s{{ "
"$originalPayload.args.0.id }}%4$s → "
"%3$s$originalPayload['args'][0]['id']%4$s"
msgstr ""
"%1$sSkrót:%2$s działa dla dowolnej zmiennej, np. %3$s{{ "
"$originalPayload.args.0.id }}%4$s → "
"%3$s$originalPayload['args'][0]['id']%4$s"

#: admin/src/views/ExternalCronView.vue
msgid ""
"%1$swp-config.php%2$s is not writable. Add this line manually before the "
"“That’s all” comment: %3$sdefine( 'DISABLE_WP_CRON', true );%4$s"
msgstr ""
"Plik %1$swp-config.php%2$s nie jest zapisywalny. Dodaj tę linię ręcznie "
"przed komentarzem „That’s all”: %3$sdefine( 'DISABLE_WP_CRON', true );%4$s"

#: admin/src/components/BuildPublishProgress.vue
msgid "%d AI credits added to your balance."
msgstr "Do Twojego salda dodano %d kredytów AI."

#: admin/src/components/TriggerSelect.vue
msgid "%d available"
msgstr "%d dostępnych"

#: admin/src/components/BuildPublishFields.vue admin/src/components/MarkdownField.vue
msgid "%d characters left"
msgstr "Pozostało znaków: %d"

#: admin/src/views/VaultView.vue
msgid "%d credential cannot be decrypted with the current key."
msgid_plural "%d credentials cannot be decrypted with the current key."
msgstr[0] "%d uwierzytelnienia nie można odszyfrować bieżącym kluczem."
msgstr[1] "%d uwierzytelnień nie można odszyfrować bieżącym kluczem."
msgstr[2] "%d uwierzytelnień nie można odszyfrować bieżącym kluczem."

#: admin/src/views/ActivityView.vue admin/src/views/SettingsView.vue
msgid "%d day"
msgid_plural "%d days"
msgstr[0] "%d dzień"
msgstr[1] "%d dni"
msgstr[2] "%d dni"

#: admin/src/views/LogsList.vue
msgid "%d deliveries queued"
msgstr "Zakolejkowano %d dostaw"

#: admin/src/components/ImportDialog.vue
msgid "%d duplicate(s) skipped."
msgstr "Pominięto duplikaty: %d."

#: admin/src/views/ActivityView.vue
msgid "%d entry"
msgid_plural "%d entries"
msgstr[0] "%d wpis"
msgstr[1] "%d wpisy"
msgstr[2] "%d wpisów"

#: admin/src/views/LogsList.vue
msgid "%d events replayed"
msgstr "Odtworzono %d zdarzeń"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "%d hour"
msgid_plural "%d hours"
msgstr[0] "%d godzina"
msgstr[1] "%d godziny"
msgstr[2] "%d godzin"

#: admin/src/views/WebhooksList.vue
msgid "%d link will be removed"
msgid_plural "%d links will be removed"
msgstr[0] "%d połączenie zostanie usunięte"
msgstr[1] "%d połączenia zostaną usunięte"
msgstr[2] "%d połączeń zostanie usuniętych"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "%d minute"
msgid_plural "%d minutes"
msgstr[0] "%d minuta"
msgstr[1] "%d minuty"
msgstr[2] "%d minut"

#: admin/src/views/LogsList.vue
msgid ""
"%d of the selected entries could not be queued: no queue job is left for "
"them."
msgstr ""
"%d z zaznaczonych wpisów nie udało się zakolejkować: nie ma już dla nich "
"zadania w kolejce."

#: admin/src/views/LogsList.vue
msgid "%d retries queued"
msgstr "Zakolejkowano %d ponowień"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "%d second"
msgid_plural "%d seconds"
msgstr[0] "%d sekunda"
msgstr[1] "%d sekundy"
msgstr[2] "%d sekund"

#: admin/src/views/LogsList.vue
msgid "%d selected"
msgstr "%d zaznaczonych"

#: admin/src/components/TriggerSelect.vue
msgid "%d trigger selected"
msgid_plural "%d triggers selected"
msgstr[0] "Wybrano %d wyzwalacz"
msgstr[1] "Wybrano %d wyzwalacze"
msgstr[2] "Wybrano %d wyzwalaczy"

#: admin/src/views/WebhooksList.vue
msgid "%d webhook"
msgid_plural "%d webhooks"
msgstr[0] "%d webhook"
msgstr[1] "%d webhooki"
msgstr[2] "%d webhooków"

#: admin/src/components/ImportDialog.vue
msgid "%d webhook(s) already exist here (same UUID)."
msgstr "%d webhook(ów) już tu istnieje (ten sam UUID)."

#: admin/src/components/ShareBuildDialog.vue
msgid "%d without a description"
msgstr "%d bez opisu"

#: admin/src/views/ExternalCronView.vue
msgid "%dh"
msgstr "%dh"

#: admin/src/views/ExternalCronView.vue
msgid "%dm"
msgstr "%dm"

#: admin/src/views/ExternalCronView.vue
msgid "%ds"
msgstr "%ds"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "%s Retry"
msgstr "Ponowienie %s"

#: admin/src/components/WebhookForm.vue
msgid "%s auth"
msgstr "Uwierzytelnianie %s"

#: admin/src/components/AiProviderSettings.vue admin/src/views/AiBuilderView.vue
msgid "%s credits left"
msgstr "Pozostało kredytów: %s"

#: admin/src/views/AiBuilderView.vue
msgid "%s credits left on your free trial."
msgstr "Na Twoim darmowym okresie próbnym zostało %s kredytów."

#: admin/src/views/AiBuilderView.vue
msgid "%s free credits"
msgstr "%s darmowych kredytów"

#: admin/src/views/ApiTokensView.vue
msgid "%s…"
msgstr "%s…"

#: admin/src/components/LogsTable.vue
msgid "(last attempt)"
msgstr "(ostatnia próba)"

#: admin/src/views/ProView.vue
msgid "(local, not counted)"
msgstr "(lokalna, nie wliczana)"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "(no output)"
msgstr "(brak wyjścia)"

#: src/Abilities/ReadAbilities.php:154
msgid "(none yet on this site)"
msgstr "(na tej witrynie jeszcze żadnego)"

#: admin/src/components/MappingEditor.vue
msgid "(param name)"
msgstr "(nazwa parametru)"

#: admin/src/components/MappingEditor.vue
msgid "(value)"
msgstr "(wartość)"

#: admin/src/components/AiStepControls.vue
msgid "+ New credential"
msgstr "+ Nowe uwierzytelnienie"

#: admin/src/views/SettingsView.vue
msgid "5 (plugin default)"
msgstr "5 (domyślnie we wtyczce)"

#: src/Services/Export/BuildImporter.php:242
msgid "A chain in this file has no name and was not imported."
msgstr "Łańcuch w tym pliku nie ma nazwy i nie został zaimportowany."

#: src/Api/ChainsController.php:162
#: src/Api/ChainsController.php:198
msgid "A chain with that name already exists."
msgstr "Łańcuch o tej nazwie już istnieje."

#: src/Abilities/WriteAbilities.php:211
msgid "A chain with this name already exists."
msgstr "Łańcuch o tej nazwie już istnieje."

#: src/Abilities/WriteAbilities.php:335
msgid ""
"A condition rule is missing \"field\" — a dot-path into the trigger payload "
"(use get_trigger_schema to see the available fields)."
msgstr ""
"W regule warunku brakuje \"field\" — ścieżki z kropkami do ładunku "
"wyzwalacza (użyj get_trigger_schema, aby zobaczyć dostępne pola)."

#: src/Api/CredentialsController.php:265
#: src/Api/CredentialsController.php:314
msgid "A credential with this name already exists."
msgstr "Uwierzytelnienie o tej nazwie już istnieje."

#: src/Services/Export/BuildImporter.php:269
#. translators: %s: chain name.
#, php-format
msgid ""
"A hop of \"%s\" points at a webhook that is not in this file, and was left "
"out."
msgstr ""
"Krok łańcucha „%s” wskazuje na webhook, którego nie ma w tym pliku, i "
"został pominięty."

#: src/Services/Export/BuildImporter.php:274
#. translators: %s: chain name.
#, php-format
msgid ""
"A hop of \"%s\" was left out because it would have made the chain loop back "
"on itself."
msgstr "Krok łańcucha „%s” został pominięty, ponieważ zapętliłby łańcuch."

#: src/Api/AgentController.php:443
msgid "A message is required."
msgstr "Wiadomość jest wymagana."

#: admin/src/views/VaultView.vue
msgid "A named header such as X-API-Key"
msgstr "Nazwany nagłówek, taki jak X-API-Key"

#: admin/src/views/WebhookLogs.vue
msgid ""
"A new delivery attempt has been queued. The result will appear in this "
"log's attempt history on the next cron run."
msgstr ""
"Nowa próba dostarczenia została dodana do kolejki. Wynik pojawi się w "
"historii prób tego wpisu po następnym uruchomieniu crona."

#: admin/src/components/RotateTokenDialog.vue
msgid ""
"A new token will be generated. The current token will be %1$simmediately "
"invalidated%2$s and all existing integrations using it will stop working."
msgstr ""
"Zostanie wygenerowany nowy token. Bieżący token zostanie %1$snatychmiast "
"unieważniony%2$s, a wszystkie istniejące integracje, które go używają, "
"przestaną działać."

#: src/Api/WebhooksController.php:570
msgid "A payload object is required for custom source."
msgstr "Dla źródła niestandardowego wymagany jest obiekt danych."

#: src/Api/AgentController.php:321
msgid "A provider and model are required."
msgstr "Dostawca i model są wymagane."

#: src/Api/CredentialsController.php:428
msgid "A secret value is required."
msgstr "Wartość sekretu jest wymagana."

#: src/Services/GluePermissions.php:193
msgid ""
"A token that could would be able to run arbitrary PHP on this site, so it "
"is off by default. Turn on \"Let API tokens write Code Glue\" in Settings "
"to allow it."
msgstr ""
"Token, który by to potrafił, mógłby uruchamiać dowolny kod PHP na tej "
"witrynie, dlatego jest to domyślnie wyłączone. Włącz „Pozwól tokenom API "
"zapisywać Code Glue” w Ustawieniach, aby na to zezwolić."

#: src/Abilities/TestAbilities.php:73
msgid "A url or webhook_id is required."
msgstr "Wymagany jest url lub webhook_id."

#: src/Api/ChainsController.php:257
msgid "A webhook cannot trigger itself."
msgstr "Webhook nie może wyzwolić sam siebie."

#: admin/src/views/SettingsView.vue
msgid "AI Builder"
msgstr "Kreator AI"

#: admin/src/views/ProView.vue
msgid "AI credits included — hosted AI, no API keys needed"
msgstr "Kredyty AI w pakiecie — hostowane AI, bez kluczy API"

#: admin/src/views/ProView.vue
msgid ""
"AI credits included, External Cron, more sites, and priority support. "
"Everything else is free."
msgstr ""
"Kredyty AI w cenie, External Cron, więcej witryn i priorytetowe wsparcie. "
"Cała reszta jest darmowa."

#: admin/src/views/ActivityView.vue
msgid "AI reasoning"
msgstr "Rozumowanie AI"

#: admin/src/components/ConditionsEditor.vue
msgid "ALL (AND)"
msgstr "WSZYSTKIE (AND)"

#: admin/src/components/ConditionsEditor.vue
msgid "AND"
msgstr "AND"

#: admin/src/components/ConditionsEditor.vue
msgid "ANY (OR)"
msgstr "DOWOLNY (OR)"

#: admin/src/App.vue admin/src/views/ActivityView.vue admin/src/views/ApiTokensView.vue
msgid "API Tokens"
msgstr "Tokeny API"

#: admin/src/components/AiProviderSettings.vue
msgid "API key"
msgstr "Klucz API"

#: admin/src/views/VaultView.vue
msgid "API key (custom header)"
msgstr "Klucz API (własny nagłówek)"

#: admin/src/components/AiStepControls.vue
msgid "API key (header)"
msgstr "Klucz API (nagłówek)"

#: src/Api/ApiTokensController.php:199
#: src/Api/ApiTokensController.php:245
#: src/Api/ApiTokensController.php:269
msgid "API token not found."
msgstr "Nie znaleziono tokena API."

#: admin/src/views/ActivityView.vue
msgid "Action"
msgstr "Akcja"

#: admin/src/views/SettingsView.vue
msgid "Action Scheduler"
msgstr "Action Scheduler"

#: admin/src/views/SettingsView.vue
msgid ""
"Action Scheduler detected — queue processing is managed automatically. You "
"can still configure an external cron URL as a direct trigger."
msgstr ""
"Wykryto Action Scheduler — przetwarzanie kolejki jest zarządzane "
"automatycznie. Nadal możesz skonfigurować zewnętrzny adres URL crona jako "
"bezpośredni wyzwalacz."

#: admin/src/components/LogsTable.vue admin/src/views/ApiTokensView.vue admin/src/views/VaultView.vue
msgid "Actions"
msgstr "Akcje"

#: admin/src/views/ProView.vue
msgid "Activate %1$sWebhook Actions Pro%2$s to continue."
msgstr "Aktywuj %1$sWebhook Actions Pro%2$s, aby kontynuować."

#: admin/src/views/ProView.vue
msgid "Activate License"
msgstr "Aktywuj licencję"

#: admin/src/views/ProView.vue
msgid "Activate Plugin"
msgstr "Aktywuj wtyczkę"

#: admin/src/views/ProView.vue
msgid "Activating…"
msgstr "Aktywowanie…"

#: admin/src/components/AiProviderSettings.vue admin/src/components/TriggerSchemaPanel.vue admin/src/components/WebhookCardContent.vue admin/src/views/ExternalCronView.vue admin/src/views/ProView.vue admin/src/views/SettingsView.vue
msgid "Active"
msgstr "Aktywna"

#: admin/src/components/HealthStatusBar.vue
msgid "Active/Total"
msgstr "Aktywne/Łącznie"

#: admin/src/App.vue admin/src/views/ActivityView.vue
msgid "Activity"
msgstr "Aktywność"

#: admin/src/views/ProView.vue
msgid "Activity Log"
msgstr "Dziennik aktywności"

#: admin/src/views/ActivityView.vue
msgid "Activity entries older than %d day have been deleted."
msgid_plural "Activity entries older than %d days have been deleted."
msgstr[0] "Usunięto wpisy aktywności starsze niż %d dzień."
msgstr[1] "Usunięto wpisy aktywności starsze niż %d dni."
msgstr[2] "Usunięto wpisy aktywności starsze niż %d dni."

#: src/Api/ActivityLogController.php:54
msgid "Activity log entry ID."
msgstr "Identyfikator wpisu dziennika aktywności."

#: src/Api/ActivityLogController.php:120
msgid "Activity log entry not found."
msgstr "Nie znaleziono wpisu dziennika aktywności."

#: admin/src/views/ActivityView.vue
msgid "Actor"
msgstr "Wykonawca"

#: admin/src/components/TriggerSchemaPanel.vue admin/src/components/TriggerSelect.vue
msgid "Add"
msgstr "Dodaj"

#: admin/src/components/MappingEditor.vue
msgid "Add Mapping"
msgstr "Dodaj mapowanie"

#: admin/src/views/WebhooksList.vue
msgid "Add Webhook"
msgstr "Dodaj webhook"

#: src/Abilities/AbilityCatalog.php:271
msgid "Add a chain link"
msgstr "Dodaj ogniwo łańcucha"

#: admin/src/views/VaultView.vue
msgid "Add a credential to securely reuse it across webhooks."
msgstr "Dodaj uwierzytelnienie, aby bezpiecznie używać go w wielu webhookach."

#: src/Abilities/AbilityCatalog.php:272
msgid ""
"Add a source→target edge to a chain. Rejected if it would create a cycle "
"across any chain."
msgstr ""
"Dodaj krawędź źródło→cel do łańcucha. Odrzucane, jeśli utworzyłoby cykl w "
"którymkolwiek łańcuchu."

#: admin/src/components/AiProviderSettings.vue
msgid ""
"Add an API key for one or more providers. The active provider is used "
"first; if it is rate-limited or fails, the agent automatically falls back "
"to another connected provider."
msgstr ""
"Dodaj klucz API dla jednego lub więcej dostawców. Aktywny dostawca jest "
"używany jako pierwszy; jeśli osiągnie limit zapytań lub zawiedzie, agent "
"automatycznie przełączy się na innego połączonego dostawcę."

#: admin/src/components/ConditionsEditor.vue
msgid "Add condition"
msgstr "Dodaj warunek"

#: admin/src/components/AiStepControls.vue
msgid "Add credential & retry"
msgstr "Dodaj uwierzytelnienie i ponów"

#: admin/src/views/VaultView.vue
msgid "Add first credential"
msgstr "Dodaj pierwsze uwierzytelnienie"

#: admin/src/components/ConditionsEditor.vue
msgid "Add group"
msgstr "Dodaj grupę"

#: admin/src/components/MappingEditor.vue
msgid "Add mapping for this field"
msgstr "Dodaj mapowanie dla tego pola"

#: admin/src/components/KeyValueEditor.vue
msgid "Add row"
msgstr "Dodaj wiersz"

#: admin/src/components/ConditionsEditor.vue
msgid "Add rule"
msgstr "Dodaj regułę"

#: admin/src/views/SettingsView.vue
msgid "Add this line to your server's crontab: %1$scrontab -e%2$s"
msgstr "Dodaj tę linię do crontaba serwera: %1$scrontab -e%2$s"

#: admin/src/components/WebhookForm.vue
msgid "Additional URL Query Parameters"
msgstr "Dodatkowe parametry zapytania URL"

#: admin/src/views/SettingsView.vue
msgid ""
"Adds a diagnostic panel to Build with AI where you can read and export the "
"recorded trace. Independent of logging above."
msgstr ""
"Dodaje panel diagnostyczny w Buduj z AI, w którym możesz przeczytać i "
"wyeksportować zapisany ślad. Niezależny od zapisywania powyżej."

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Adds your prompts and the assistant's replies so the recipient can see how "
"this build was made. Read results are never included and obvious secrets "
"are masked, but the conversation may still mention details about your site "
"— review before sharing publicly."
msgstr ""
"Dołącza Twoje polecenia i odpowiedzi asystenta, aby odbiorca zobaczył, jak "
"powstała ta konfiguracja. Wyniki odczytów nigdy nie są dołączane, a "
"oczywiste sekrety są maskowane, ale rozmowa może nadal wspominać szczegóły "
"Twojej witryny — przejrzyj ją przed publicznym udostępnieniem."

#: admin/src/views/SettingsView.vue
msgid "Admin Menu"
msgstr "Menu administratora"

#: admin/src/views/SettingsView.vue
msgid "Admin action history older than this will be automatically deleted."
msgstr ""
"Historia działań administratora starsza niż ta wartość będzie automatycznie "
"usuwana."

#: admin/src/views/ActivityView.vue
msgid "Admin and API action history"
msgstr "Historia działań administratora i API"

#: admin/src/components/MappingEditor.vue
msgid "After Mapping Payload Preview"
msgstr "Podgląd payloadu po mapowaniu"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "After Pre-dispatch Code Glue Payload"
msgstr "Payload po pre-dispatch Code Glue"

#: admin/src/components/WebhookForm.vue
msgid "After saving, the value is encrypted at rest and never shown again."
msgstr ""
"Po zapisaniu wartość jest szyfrowana w spoczynku i nigdy więcej nie jest "
"pokazywana."

#: admin/src/views/ProView.vue
msgid "Agency"
msgstr "Agency"

#: admin/src/components/CreateTokenDialog.vue
msgid "Agent (AI)"
msgstr "Agent (AI)"

#: admin/src/views/ActivityView.vue
msgid "All actions"
msgstr "Wszystkie akcje"

#: admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "All chains"
msgstr "Wszystkie łańcuchy"

#: admin/src/views/SettingsView.vue
msgid "All logs have been cleared"
msgstr "Wszystkie logi zostały wyczyszczone"

#: src/Api/SettingsController.php:255
msgid "All logs have been cleared."
msgstr "Wszystkie logi zostały wyczyszczone."

#: admin/src/views/LogsList.vue
msgid "All statuses"
msgstr "Wszystkie statusy"

#: admin/src/components/RotateTokenDialog.vue
msgid "Also update expiry"
msgstr "Zaktualizuj również wygaśnięcie"

#: admin/src/components/TokenCreatedDialog.vue
msgid ""
"Alternatively, %1$sAuthorization: Bearer &lt;token&gt;%2$s works on most "
"servers (requires %1$sCGIPassAuth On%2$s on Apache)."
msgstr ""
"Alternatywnie %1$sAuthorization: Bearer &lt;token&gt;%2$s działa na "
"większości serwerów (wymaga %1$sCGIPassAuth On%2$s w Apache)."

#: admin/src/views/VaultView.vue
msgid ""
"An %1$sagent%2$s API token can assign credentials to webhooks but can never "
"read their values."
msgstr ""
"Token API %1$sagent%2$s może przypisywać uwierzytelnienia do webhooków, ale "
"nigdy nie może odczytać ich wartości."

#: src/Api/AgentController.php:246
msgid "An API key is required to connect this provider."
msgstr "Do połączenia tego dostawcy wymagany jest klucz API."

#: admin/src/components/ShareBuildDialog.vue
msgid "Anonymize my site address"
msgstr "Anonimizuj adres mojej witryny"

#: admin/src/components/ui/UpgradeBadge.vue
msgid "Any unsaved changes on this form will be lost."
msgstr "Wszystkie niezapisane zmiany w tym formularzu zostaną utracone."

#: admin/src/components/WebhookForm.vue
msgid ""
"Appended to the URL alongside the JSON body. Values support dot-notation "
"paths or static strings."
msgstr ""
"Dołączane do adresu URL obok treści JSON. Wartości obsługują ścieżki w "
"notacji kropkowej lub statyczny tekst."

#: src/Services/WpAppPasswordService.php:72
msgid "Application Passwords are disabled for your user account."
msgstr "Hasła aplikacji są wyłączone dla Twojego konta użytkownika."

#: src/Services/WpAppPasswordService.php:64
msgid ""
"Application Passwords are not available on this site. They require HTTPS "
"(or a local development environment)."
msgstr ""
"Hasła aplikacji nie są dostępne na tej witrynie. Wymagają HTTPS (lub "
"lokalnego środowiska deweloperskiego)."

#: src/Services/WpAppPasswordService.php:47
msgid "Application Passwords require WordPress 5.6 or newer."
msgstr "Hasła aplikacji wymagają WordPressa 5.6 lub nowszego."

#: admin/src/views/SettingsView.vue
msgid "Archive logs before deletion"
msgstr "Archiwizuj logi przed usunięciem"

#: admin/src/views/SettingsView.vue
msgid "Are you sure you want to delete all %d log?"
msgid_plural "Are you sure you want to delete all %d logs?"
msgstr[0] "Czy na pewno chcesz usunąć %d log?"
msgstr[1] "Czy na pewno chcesz usunąć %d logi?"
msgstr[2] "Czy na pewno chcesz usunąć %d logów?"

#: src/Api/LogsController.php:110
msgid "Array of log IDs to retry."
msgstr "Tablica identyfikatorów logów do ponowienia."

#: admin/src/components/AiStepControls.vue
msgid ""
"Ask the agent to fix the payload — it can see this response now — then "
"retry. Skipping leaves the rest of the plan (including going live) to run "
"on a delivery that failed."
msgstr ""
"Poproś agenta o poprawienie payloadu — widzi już tę odpowiedź — a potem "
"ponów. Pominięcie sprawi, że reszta planu (łącznie z uruchomieniem na żywo) "
"wykona się na dostawie, która się nie powiodła."

#: src/Abilities/GlueAbilities.php:126
msgid "Assign a Code Glue snippet to a webhook"
msgstr "Przypisz snippet Code Glue do webhooka"

#: src/Abilities/AbilityCatalog.php:227
msgid "Assign a vault credential to a webhook"
msgstr "Przypisz uwierzytelnienie z sejfu do webhooka"

#: admin/src/components/BuiltWebhookActions.vue
msgid "Asynchronous delivery"
msgstr "Dostarczanie asynchroniczne"

#: admin/src/views/AiBuilderView.vue
msgid ""
"Asynchronous: queued and delivered in the background on the next cron run, "
"with automatic retries — it doesn’t slow the triggering request, but "
"nothing is sent until a working cron runs. Synchronous: delivered "
"instantly, inline with the triggering request — it works without any cron, "
"at the cost of a little added latency. Toggle to switch."
msgstr ""
"Asynchronicznie: trafia do kolejki i jest dostarczane w tle przy "
"najbliższym uruchomieniu crona, z automatycznymi ponowieniami — nie "
"spowalnia żądania wyzwalającego, ale nic nie zostanie wysłane, dopóki nie "
"zadziała cron. Synchronicznie: dostarczane od razu, w ramach żądania "
"wyzwalającego — działa bez crona, kosztem niewielkiego dodatkowego "
"opóźnienia. Przełącz, aby zmienić."

#: src/Abilities/GlueAbilities.php:127
msgid ""
"Attach a snippet to a webhook+trigger and enable it: stage \"pre\" "
"transforms the payload before dispatch, stage \"post\" runs side effects "
"after the response. Snippet errors never break a delivery (the payload "
"falls back unmodified and the error is logged). Attaching to a LIVE webhook "
"requires confirmation; on a still-disabled webhook being built it runs "
"without one. Pass snippet_id 0 to unassign, or enabled false to keep it "
"assigned but paused."
msgstr ""
"Dołącz snippet do pary webhook+wyzwalacz i włącz go: etap \"pre\" "
"przekształca payload przed wysyłką, etap \"post\" uruchamia efekty uboczne "
"po odpowiedzi. Błędy snippetu nigdy nie przerywają dostawy (payload wraca "
"niezmieniony, a błąd trafia do logu). Dołączenie do webhooka NA ŻYWO wymaga "
"potwierdzenia; na wciąż wyłączonym, budowanym webhooku działa bez niego. "
"Przekaż snippet_id 0, aby odpiąć, albo enabled false, aby zostawić "
"przypisany, ale wstrzymany."

#: admin/src/components/LogsTable.vue
msgid "Attempt #%d"
msgstr "Próba #%d"

#: admin/src/views/QueueView.vue
msgid "Attempt %1$d/%2$d"
msgstr "Próba %1$d/%2$d"

#: admin/src/components/LogsTable.vue
msgid "Attempt History"
msgstr "Historia prób"

#: admin/src/components/LogsTable.vue
msgid "Attempted At"
msgstr "Czas próby"

#: src/Api/AuthHelper.php:42
msgid ""
"Authentication required. Provide a valid API token via X-FSWA-Token header, "
"Authorization: Bearer token, or api_token query parameter."
msgstr ""
"Wymagane uwierzytelnienie. Podaj prawidłowy token API w nagłówku "
"X-FSWA-Token, Authorization: Bearer token lub parametrze zapytania "
"api_token."

#: admin/src/components/WebhookForm.vue
msgid "Authorization (optional)"
msgstr "Autoryzacja (opcjonalnie)"

#: src/Api/WebhookSchema.php:51
msgid "Authorization header value."
msgstr "Wartość nagłówka Authorization."

#: admin/src/views/VaultView.vue
msgid "Authorization: Basic <base64(user:pass)> — incl. WP Application Passwords"
msgstr "Authorization: Basic <base64(user:pass)> — w tym hasła aplikacji WP"

#: admin/src/components/AiProviderSettings.vue
msgid "Auto"
msgstr "Auto"

#: admin/src/components/AiProviderSettings.vue
msgid ""
"Auto prefers your WordPress connectors when available, otherwise your own "
"keys."
msgstr ""
"Auto preferuje łączniki WordPressa, gdy są dostępne, w przeciwnym razie "
"Twoje własne klucze."

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Automatically enrich payload with user profile information"
msgstr "Automatycznie wzbogać dane o informacje z profilu użytkownika"

#: admin/src/components/BuildPublishFields.vue
msgid "Automation"
msgstr "Automatyzacja"

#: admin/src/views/ProView.vue
msgid "Automation Chains"
msgstr "Łańcuchy automatyzacji"

#: admin/src/components/MappingEditor.vue
msgid "Available Fields"
msgstr "Dostępne pola"

#: admin/src/components/HealthStatusBar.vue
msgid "Avg attempts"
msgstr "Śr. liczba prób"

#: admin/src/components/ExternalCronChart.vue
msgid "Avg ping"
msgstr "Śr. ping"

#: admin/src/components/HealthStatusBar.vue
msgid "Avg response"
msgstr "Śr. odpowiedź"

#: admin/src/views/WebhookEdit.vue admin/src/views/WebhookLogs.vue
msgid "Back to webhooks"
msgstr "Powrót do webhooków"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Backoff Strategy"
msgstr "Strategia ponawiania"

#: admin/src/components/WebhookForm.vue
msgid "Base Delay (s)"
msgstr "Bazowe opóźnienie (s)"

#: admin/src/views/SettingsView.vue
msgid "Base Delay (seconds)"
msgstr "Opóźnienie bazowe (sekundy)"

#: admin/src/components/WebhookForm.vue
msgid ""
"Base seconds used to calculate the retry delay. Acts as a multiplier for "
"exponential, interval for linear, and constant wait for fixed."
msgstr ""
"Bazowa liczba sekund używana do obliczenia opóźnienia ponowienia. Działa "
"jako mnożnik dla wykładniczej, interwał dla liniowej i stałe oczekiwanie "
"dla stałej."

#: src/Api/WebhookSchema.php:117
msgid ""
"Base wait in seconds the backoff strategy multiplies. Null inherits the "
"site-wide setting, then 30."
msgstr ""
"Bazowy czas oczekiwania w sekundach, który strategia backoff mnoży. Null "
"dziedziczy ustawienie witryny, a potem 30."

#: admin/src/components/AiStepControls.vue
msgid "Basic auth"
msgstr "Basic auth"

#: admin/src/views/VaultView.vue
msgid "Basic auth (user + password)"
msgstr "Uwierzytelnianie Basic (użytkownik + hasło)"

#: src/Api/CredentialsController.php:417
msgid "Basic auth requires a username and password."
msgstr "Uwierzytelnianie Basic wymaga nazwy użytkownika i hasła."

#: admin/src/components/AiStepControls.vue
msgid "Bearer token"
msgstr "Token Bearer"

#: admin/src/views/VaultView.vue
msgid "Bearer token (PAT)"
msgstr "Token Bearer (PAT)"

#: src/Api/ChainsController.php:254
msgid "Both source_webhook_id and target_webhook_id are required."
msgstr "Wymagane są zarówno source_webhook_id, jak i target_webhook_id."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Browse Library"
msgstr "Przeglądaj bibliotekę"

#: admin/src/views/AiBuilderView.vue
msgid "Build"
msgstr "Buduj"

#: admin/src/components/AiStepPanel.vue admin/src/views/AiBuilderView.vue
msgid "Build complete."
msgstr "Budowanie zakończone."

#: admin/src/components/AiPlanStepper.vue
msgid "Build progress"
msgstr "Postęp budowania"

#: admin/src/components/BuildPublishFields.vue
msgid "Build title"
msgstr "Tytuł konfiguracji"

#: admin/src/App.vue admin/src/views/AiBuilderView.vue
msgid "Build with AI"
msgstr "Buduj z AI"

#: admin/src/views/ProView.vue
msgid "Build with AI (bring your own API key)"
msgstr "Buduj z AI (własny klucz API)"

#: admin/src/components/BuildPublishProgress.vue
msgid "Building your page…"
msgstr "Tworzenie Twojej strony…"

#: admin/src/components/AiStepPanel.vue
msgid ""
"Built from a reference payload — the shape is real, the values are ours. "
"The test step checks it against your endpoint."
msgstr ""
"Zbudowane z payloadu referencyjnego — kształt jest prawdziwy, wartości są "
"nasze. Krok testowy sprawdza go na Twoim endpoincie."

#: admin/src/views/ProView.vue
msgid "Business"
msgstr "Business"

#: admin/src/components/AiProviderSettings.vue
msgid "Buy credits"
msgstr "Kup kredyty"

#: admin/src/views/VaultView.vue
msgid ""
"By default the encryption key is generated and stored in the database. For "
"stronger protection — so a database-only dump can't decrypt secrets — move "
"the key into %1$swp-config.php%2$s:"
msgstr ""
"Domyślnie klucz szyfrowania jest generowany i przechowywany w bazie danych. "
"Aby uzyskać silniejszą ochronę — tak, by zrzut samej bazy danych nie "
"odszyfrował sekretów — przenieś klucz do %1$swp-config.php%2$s:"

#: admin/src/components/AiProviderSettings.vue admin/src/components/ChangeExpiryDialog.vue admin/src/components/CreateTokenDialog.vue admin/src/components/ExportDialog.vue admin/src/components/ImportDialog.vue admin/src/components/LogsTable.vue admin/src/components/RotateTokenDialog.vue admin/src/components/ShareBuildDialog.vue admin/src/components/WebhookForm.vue admin/src/components/ui/UpgradeBadge.vue admin/src/views/ActivityView.vue admin/src/views/AiBuilderView.vue admin/src/views/ApiTokensView.vue admin/src/views/ProView.vue admin/src/views/SettingsView.vue admin/src/views/VaultView.vue admin/src/views/WebhooksList.vue
msgid "Cancel"
msgstr "Anuluj"

#: src/Api/QueueController.php:335
msgid "Cannot delete a job that is currently being processed."
msgstr "Nie można usunąć zadania, które jest aktualnie przetwarzane."

#: admin/src/components/ConditionsEditor.vue
msgid "Cannot evaluate"
msgstr "Nie można ocenić"

#: admin/src/views/SettingsView.vue
msgid ""
"Cap on the wait between retries. Exponential backoff grows 2ⁿ × base — "
"without a cap delays would grow indefinitely. Any calculated delay above "
"this value is clamped to it."
msgstr ""
"Limit czasu oczekiwania między ponowieniami. Wykładnicze ponawianie rośnie "
"2ⁿ × baza — bez limitu opóźnienia rosłyby w nieskończoność. Każde obliczone "
"opóźnienie powyżej tej wartości jest do niej ograniczane."

#: admin/src/components/WebhookForm.vue
msgid ""
"Cap on the wait between retries. Prevents exponential backoff from growing "
"indefinitely — any delay above this value is clamped to it."
msgstr ""
"Ograniczenie czasu oczekiwania między ponowieniami. Zapobiega "
"nieograniczonemu wzrostowi wykładniczego ponawiania — każde opóźnienie "
"powyżej tej wartości jest do niej przycinane."

#: src/Services/Ai/PlanExecutor.php:786
#. translators: %s: trigger (do_action hook) name.
#, php-format
msgid ""
"Capture an example payload for \"%s\" — fire the event once (e.g. publish a "
"test post)"
msgstr ""
"Przechwyć przykładowy payload dla „%s” — wywołaj zdarzenie raz (np. "
"opublikuj testowy wpis)"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Capture an example payload to enable live preview."
msgstr "Przechwyć przykładowe dane, aby włączyć podgląd na żywo."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Captured"
msgstr "Przechwycony"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Captured + Mapping"
msgstr "Przechwycony + mapowanie"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Captured + Mapping + Pre-dispatch Glue"
msgstr "Przechwycone + mapowanie + Glue przed wysyłką"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Captured + Mapping + Pre-dispatch Glue + Post-dispatch Glue"
msgstr "Przechwycone + mapowanie + Glue przed wysyłką + Glue po wysyłce"

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Captured example payloads are anonymized automatically: names, addresses, "
"emails, phone numbers and IP addresses are replaced with placeholders, so "
"the field mapping still previews without carrying anyone's data."
msgstr ""
"Przechwycone przykładowe ładunki są anonimizowane automatycznie: nazwiska, "
"adresy, e-maile, numery telefonów i adresy IP są zastępowane wartościami "
"zastępczymi, więc podgląd mapowania pól nadal działa, ale nie przenosi "
"niczyich danych."

#: admin/src/components/ExportDialog.vue
msgid ""
"Captured example payloads hold whatever a real visitor submitted — names, "
"addresses, emails, phone numbers, IP addresses. They are replaced with "
"placeholders unless you tick this, which you only want for a private backup "
"of your own site."
msgstr ""
"Przechwycone przykładowe ładunki zawierają to, co przesłał prawdziwy "
"użytkownik — nazwiska, adresy, e-maile, numery telefonów, adresy IP. Są "
"zastępowane wartościami zastępczymi, chyba że zaznaczysz tę opcję, której "
"potrzebujesz tylko do prywatnej kopii własnej witryny."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Captured payload with field mapping applied"
msgstr "Przechwycone dane z zastosowanym mapowaniem pól"

#: admin/src/components/MappingEditor.vue
msgid "Cast"
msgstr "Rzutowanie"

#: src/Api/WebhookSchema.php:124
msgid ""
"Ceiling in seconds for an exponential backoff. Null inherits the site-wide "
"setting, then 3600."
msgstr ""
"Górny limit w sekundach dla wykładniczego backoffu. Null dziedziczy "
"ustawienie witryny, a potem 3600."

#: admin/src/components/ChainPicker.vue admin/src/components/ShareBuildDialog.vue
msgid "Chain"
msgstr "Łańcuch"

#: admin/src/components/ChainPicker.vue
msgid "Chain description (optional)"
msgstr "Opis łańcucha (opcjonalnie)"

#: admin/src/components/LogsTable.vue admin/src/views/QueueView.vue
msgid "Chain link #%1$s — %2$s"
msgstr "Połączenie łańcucha #%1$s — %2$s"

#: admin/src/components/LogsTable.vue admin/src/views/QueueView.vue
msgid "Chain link #%s (deleted)"
msgstr "Połączenie łańcucha #%s (usunięte)"

#: src/Api/ChainsController.php:286
msgid "Chain link not found."
msgstr "Nie znaleziono połączenia łańcucha."

#: admin/src/components/WebhookForm.vue
msgid ""
"Chain mode links this webhook to upstream webhooks, which requires a saved "
"webhook record. %1$sSave the webhook first%2$s (with or without WP-hook "
"triggers — they'll be cleared when you pick upstream webhooks), then choose "
"your chain sources on the next screen."
msgstr ""
"Tryb łańcucha łączy ten webhook z webhookami nadrzędnymi, co wymaga "
"zapisanego rekordu webhooka. %1$sNajpierw zapisz webhook%2$s (z "
"wyzwalaczami WP-hook lub bez — zostaną wyczyszczone po wybraniu webhooków "
"nadrzędnych), a następnie wybierz źródła łańcucha na kolejnym ekranie."

#: admin/src/views/WebhooksList.vue
msgid "Chain name"
msgstr "Nazwa łańcucha"

#: src/Abilities/WriteAbilities.php:207
#: src/Api/ChainsController.php:159
#: src/Api/ChainsController.php:194
msgid "Chain name is required."
msgstr "Nazwa łańcucha jest wymagana."

#: src/Api/ChainsController.php:120
#: src/Api/ChainsController.php:187
#: src/Api/ChainsController.php:227
#: src/Api/ChainsController.php:248
msgid "Chain not found."
msgstr "Nie znaleziono łańcucha."

#: admin/src/views/ActivityView.vue
msgid "Chains"
msgstr "Łańcuchy"

#: admin/src/components/ExportDialog.vue
msgid "Chains (member webhooks included automatically)"
msgstr "Łańcuchy (należące webhooki dołączane automatycznie)"

#: admin/src/views/ApiTokensView.vue
msgid "Change expiry"
msgstr "Zmień datę wygaśnięcia"

#: admin/src/components/ChangeExpiryDialog.vue
msgid "Change expiry: %s"
msgstr "Zmień wygaśnięcie: %s"

#: admin/src/views/AiBuilderView.vue
msgid "Change model"
msgstr "Zmień model"

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Change what this build contains — add or remove a webhook — to publish it "
"as a separate page."
msgstr ""
"Zmień zawartość tej konfiguracji — dodaj lub usuń webhook — aby opublikować "
"ją jako osobną stronę."

#: admin/src/views/ActivityView.vue
msgid "Changes"
msgstr "Zmiany"

#: admin/src/components/BuildPublishProgress.vue
msgid "Checking whether the page is live…"
msgstr "Sprawdzanie, czy strona jest już dostępna…"

#: admin/src/components/AiStepControls.vue
msgid "Choose a credential"
msgstr "Wybierz uwierzytelnienie"

#: src/Api/PublishBuildController.php:109
msgid "Choose whether this is an integration or an automation."
msgstr "Wybierz, czy to integracja, czy automatyzacja."

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"Choose which payload the conditions read from. Original is the raw payload, "
"before field mapping. Transformed is the payload after mapping AND after "
"the pre-dispatch Code Glue snippet — pick it when you filter on a value the "
"snippet adds. Note: if a field does not exist in the payload you pick, "
"negative operators like 'not equals' still pass, so the event is sent."
msgstr ""
"Wybierz, z którego payloadu czytają warunki. Oryginalny to surowy payload, "
"przed mapowaniem pól. Przekształcony to payload po mapowaniu ORAZ po "
"snippecie pre-dispatch Code Glue — wybierz go, gdy filtrujesz po wartości "
"dodawanej przez snippet. Uwaga: jeśli pole nie istnieje w wybranym "
"payloadzie, operatory negatywne, jak „nie równa się”, i tak przechodzą, "
"więc zdarzenie zostanie wysłane."

#: admin/src/views/SettingsView.vue
msgid "Clear All Logs"
msgstr "Wyczyść wszystkie logi"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Clear assignment"
msgstr "Wyczyść przypisanie"

#: admin/src/views/ActivityView.vue
msgid "Clear filters"
msgstr "Wyczyść filtry"

#: admin/src/views/LogsList.vue
msgid "Clear selection"
msgstr "Wyczyść zaznaczenie"

#: admin/src/components/FieldSelector.vue
msgid "Click to select or browse • + to select an array/object"
msgstr "Kliknij, aby wybrać lub przeglądać • + aby wybrać tablicę/obiekt"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Client Error"
msgstr "Błąd klienta"

#: admin/src/components/LogsTable.vue admin/src/components/PayloadGlueDrawer.vue admin/src/components/TestWebhookDrawer.vue admin/src/components/ui/Dialog.vue admin/src/views/LogsList.vue admin/src/views/WebhookLogs.vue
msgid "Close"
msgstr "Zamknij"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Code Glue"
msgstr "Code Glue"

#: admin/src/components/ImportDialog.vue
msgid ""
"Code Glue is custom PHP that runs on your site when these webhooks fire. "
"Only import builds from a source you trust — review each snippet below."
msgstr ""
"Code Glue to własny kod PHP uruchamiany w Twojej witrynie, gdy te webhooki "
"się wyzwalają. Importuj konfiguracje wyłącznie ze źródeł, którym ufasz — "
"przejrzyj każdy fragment poniżej."

#: src/Services/GluePermissions.php:188
msgid "Code Glue is switched off in wp-config.php."
msgstr "Code Glue jest wyłączone w wp-config.php."

#: admin/src/views/SettingsView.vue
msgid ""
"Code Glue snippets are PHP that runs on this site, so writing one normally "
"requires a signed-in user who is allowed to edit plugin code. Turning this "
"on lets a full-scope API token — including a connected AI tool over MCP — "
"write and assign snippets too. That makes the token as powerful as a plugin "
"editor, so leave it off unless you need it. Reading snippets never required "
"it."
msgstr ""
"Snippety Code Glue to PHP uruchamiany na tej witrynie, więc ich zapis "
"normalnie wymaga zalogowanego użytkownika z prawem edycji kodu wtyczek. "
"Włączenie tej opcji pozwala tokenowi API o pełnym zakresie — także "
"podłączonemu narzędziu AI przez MCP — zapisywać i przypisywać snippety. To "
"czyni token tak potężnym jak edytor wtyczek, więc zostaw to wyłączone, "
"chyba że naprawdę tego potrzebujesz. Odczyt snippetów nigdy tego nie "
"wymagał."

#: admin/src/views/ProView.vue
msgid "Code Glue — PHP snippets before and after dispatch"
msgstr "Code Glue — snippety PHP przed i po wysyłce"

#: src/Api/TriggersController.php:144
msgid "Comments"
msgstr "Komentarze"

#: admin/src/views/ProView.vue
msgid "Community support forum"
msgstr "Forum wsparcia społeczności"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Conditions"
msgstr "Warunki"

#: admin/src/components/ConditionsEditor.vue
msgid ""
"Conditions are evaluated against the payload — use the 'Evaluate conditions "
"against' toggle above to choose original or transformed."
msgstr ""
"Warunki są oceniane względem danych — użyj powyższego przełącznika „Oceniaj "
"warunki względem”, aby wybrać oryginalne lub przekształcone."

#: src/Api/LogsController.php:405
msgid "Conditions are not met with current settings — event would be skipped."
msgstr ""
"Warunki nie są spełnione przy obecnych ustawieniach — zdarzenie zostałoby "
"pominięte."

#: admin/src/views/SettingsView.vue
msgid "Configure plugin behavior"
msgstr "Skonfiguruj zachowanie wtyczki"

#: admin/src/components/AiStepControls.vue
msgid "Confirm & run"
msgstr "Potwierdź i uruchom"

#: admin/src/components/AiProviderSettings.vue admin/src/views/AiBuilderView.vue
msgid "Connect"
msgstr "Połącz"

#: admin/src/views/AiBuilderView.vue
msgid "Connect an AI provider"
msgstr "Połącz dostawcę AI"

#: admin/src/views/AiBuilderView.vue
msgid "Connect your own key"
msgstr "Podłącz własny klucz"

#: admin/src/views/AiBuilderView.vue
msgid "Connect your own provider, or add Pro credits, to keep building."
msgstr "Podłącz własnego dostawcę albo dokup kredyty Pro, aby dalej budować."

#: admin/src/components/BuildPublishFields.vue
msgid "Connects WordPress to a named service — a CRM, a spreadsheet, a chat app."
msgstr ""
"Łączy WordPressa z konkretną usługą — CRM-em, arkuszem kalkulacyjnym, "
"komunikatorem."

#: admin/src/components/AiStepControls.vue
msgid "Continue"
msgstr "Kontynuuj"

#: admin/src/components/AiStepPanel.vue
msgid "Continue build"
msgstr "Kontynuuj budowanie"

#: src/Api/AgentController.php:552
#: src/Services/Ai/AgentOrchestrator.php:122
#: src/Services/Ai/PlanExecutor.php:60
#: src/Services/Ai/PlanExecutor.php:169
#: src/Services/Ai/PlanExecutor.php:487
#: src/Services/Ai/PlanExecutor.php:559
msgid "Conversation not found."
msgstr "Nie znaleziono rozmowy."

#: admin/src/components/ChatMarkdown.vue
msgid "Copied"
msgstr "Skopiowano"

#: admin/src/components/ChatMarkdown.vue
msgid "Copy"
msgstr "Kopiuj"

#: admin/src/components/LogsTable.vue admin/src/views/QueueView.vue
msgid "Copy Event UUID"
msgstr "Kopiuj UUID zdarzenia"

#: admin/src/views/QueueView.vue
msgid "Copy URL"
msgstr "Kopiuj URL"

#: admin/src/components/LogsTable.vue admin/src/components/WebhookCardContent.vue admin/src/views/QueueView.vue
msgid "Copy X-Webhook-Id"
msgstr "Kopiuj X-Webhook-Id"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Copy code"
msgstr "Kopiuj kod"

#: admin/src/components/WebhookCardContent.vue
msgid "Copy endpoint URL"
msgstr "Kopiuj adres URL punktu końcowego"

#: admin/src/components/LogsTable.vue
msgid "Copy headers"
msgstr "Kopiuj nagłówki"

#: admin/src/components/LogsTable.vue
msgid "Copy original payload"
msgstr "Kopiuj oryginalne dane"

#: admin/src/components/LogsTable.vue
msgid "Copy payload"
msgstr "Kopiuj dane"

#: admin/src/components/LogsTable.vue
msgid "Copy response body"
msgstr "Kopiuj treść odpowiedzi"

#: admin/src/views/QueueView.vue
msgid "Copy scheduled time"
msgstr "Kopiuj zaplanowany czas"

#: admin/src/components/TokenCreatedDialog.vue
msgid "Copy to clipboard"
msgstr "Kopiuj do schowka"

#: admin/src/components/WebhookCardContent.vue admin/src/views/QueueView.vue
msgid "Copy trigger name"
msgstr "Kopiuj nazwę wyzwalacza"

#: admin/src/components/ImportDialog.vue
msgid "Could not create the Application Password."
msgstr "Nie udało się utworzyć hasła aplikacji."

#: admin/src/components/AiProviderSettings.vue
msgid "Could not load models for this key — check that the key is valid."
msgstr ""
"Nie udało się wczytać modeli dla tego klucza — sprawdź, czy klucz jest "
"prawidłowy."

#: src/Api/QueueController.php:270
msgid "Could not lock job for processing."
msgstr "Nie udało się zablokować zadania do przetworzenia."

#: src/Services/Builds/PublishBuildClient.php:79
#. translators: %s: HTTP error message.
#, php-format
msgid "Could not reach the WP Webhooks publishing service: %s"
msgstr "Nie udało się połączyć z usługą publikowania WP Webhooks: %s"

#: admin/src/components/ShareBuildDialog.vue
msgid "Could not read this build."
msgstr "Nie udało się odczytać tej konfiguracji."

#: admin/src/components/ImportDialog.vue
msgid ""
"Could not read this file. Make sure it is a build JSON exported from "
"Webhook Actions."
msgstr ""
"Nie udało się odczytać tego pliku. Upewnij się, że to plik JSON "
"wyeksportowany z Webhook Actions."

#: admin/src/views/AiBuilderView.vue
msgid "Could not start the free trial."
msgstr "Nie udało się uruchomić darmowego okresu próbnego."

#: src/Services/Ai/TrialClient.php:195
msgid "Could not start the free trial. Please try again."
msgstr "Nie udało się uruchomić darmowego okresu próbnego. Spróbuj ponownie."

#: admin/src/components/AiStepControls.vue
msgid "Create & assign"
msgstr "Utwórz i przypisz"

#: admin/src/components/AiStepControls.vue
msgid "Create & continue"
msgstr "Utwórz i kontynuuj"

#: admin/src/components/CreateTokenDialog.vue
msgid "Create API Token"
msgstr "Utwórz token API"

#: admin/src/components/WebhookForm.vue admin/src/views/WebhookEdit.vue
msgid "Create Webhook"
msgstr "Utwórz webhook"

#: src/Abilities/GlueAbilities.php:73
msgid ""
"Create a Code Glue PHP snippet (inert until assigned to a webhook). Write "
"plain PHP without a <?php tag. PRE-dispatch snippets receive $payload — the "
"payload AFTER the field mapping has already run — and MUST end with `return "
"$payload;`, returning the FULL modified array (a non-array return leaves "
"the payload unchanged). CRITICAL: $args is just $payload[\"args\"], so it "
"is an EMPTY ARRAY unless the mapping preserved an \"args\" key; with "
"includeUnmapped:false only the mapping's target names exist and $args[0] is "
"silently missing, so any `if ($postId)` guard around it never runs and the "
"snippet no-ops. Read values from the mapped target names "
"($payload[\"post_id\"]) — and if you need a source field the mapping drops, "
"add it to set_mapping first (e.g. source \"args.0\" → target \"post_id\") "
"and unset it before returning if it must not be sent. The shorthand {{ "
"$args.0.total }} expands to $args[0][\"total\"] and is only safe when "
"\"args\" survives the mapping. POST-dispatch snippets receive $payload (as "
"sent), $originalPayload (pre-mapping), $responseCode and $responseBody, and "
"run for side effects only (return value ignored). Always test with "
"preview_snippet (it feeds the real mapped payload) before assign_snippet."
msgstr ""
"Utwórz snippet PHP Code Glue (nieaktywny, dopóki nie zostanie przypisany do "
"webhooka). Pisz czysty PHP bez znacznika <?php. Snippety PRE-dispatch "
"otrzymują $payload — payload PO wykonaniu mapowania pól — i MUSZĄ kończyć "
"się `return $payload;`, zwracając PEŁNĄ zmodyfikowaną tablicę (zwrot czegoś "
"innego niż tablica zostawia payload bez zmian). KLUCZOWE: $args to po "
"prostu $payload[\"args\"], więc jest PUSTĄ TABLICĄ, chyba że mapowanie "
"zachowało klucz \"args\"; przy includeUnmapped:false istnieją tylko nazwy "
"docelowe z mapowania, a $args[0] po cichu znika, więc żaden warunek `if "
"($postId)` wokół niego nigdy się nie wykona i snippet nic nie zrobi. Czytaj "
"wartości z nazw docelowych mapowania ($payload[\"post_id\"]) — a jeśli "
"potrzebujesz pola źródłowego, które mapowanie odrzuca, dodaj je najpierw do "
"set_mapping (np. source \"args.0\" → target \"post_id\") i usuń przed "
"zwrotem, jeśli nie ma być wysłane. Skrót {{ $args.0.total }} rozwija się do "
"$args[0][\"total\"] i jest bezpieczny tylko wtedy, gdy \"args\" przetrwa "
"mapowanie. Snippety POST-dispatch otrzymują $payload (jak wysłano), "
"$originalPayload (przed mapowaniem), $responseCode i $responseBody i służą "
"tylko efektom ubocznym (wartość zwracana jest ignorowana). Zawsze testuj "
"przez preview_snippet (dostaje prawdziwy zmapowany payload) przed "
"assign_snippet."

#: src/Abilities/GlueAbilities.php:72
msgid "Create a Code Glue snippet"
msgstr "Utwórz snippet Code Glue"

#: admin/src/components/BuildPublishFields.vue
msgid "Create a HubSpot deal when a WooCommerce order is placed"
msgstr ""
"Utwórz szansę sprzedaży w HubSpot, gdy zostanie złożone zamówienie "
"WooCommerce"

#: admin/src/components/ImportDialog.vue
msgid "Create a WP Application Password"
msgstr "Utwórz hasło aplikacji WP"

#: admin/src/components/AiStepControls.vue
msgid "Create a WP Application Password for me"
msgstr "Utwórz dla mnie hasło aplikacji WP"

#: src/Abilities/AbilityCatalog.php:242
msgid "Create a WordPress Application Password credential"
msgstr "Utwórz uwierzytelnienie z hasłem aplikacji WordPress"

#: src/Abilities/AbilityCatalog.php:257
msgid ""
"Create a named chain that wires 2xx completions of one webhook to "
"downstream webhooks."
msgstr ""
"Utwórz nazwany łańcuch, który łączy zakończenia 2xx jednego webhooka z "
"kolejnymi webhookami."

#: admin/src/components/ImportDialog.vue
msgid "Create a new vault credential"
msgstr "Utwórz nowe uwierzytelnienie w sejfie"

#: src/Abilities/AbilityCatalog.php:118
msgid ""
"Create a new webhook (always created DISABLED until the user enables it). "
"Provide name, endpoint_url, http_method and triggers."
msgstr ""
"Utwórz nowy webhook (zawsze tworzony jako WYŁĄCZONY, dopóki użytkownik go "
"nie włączy). Podaj name, endpoint_url, http_method i triggers."

#: admin/src/views/ApiTokensView.vue
msgid "Create a token to enable programmatic API access."
msgstr "Utwórz token, aby umożliwić programowy dostęp do API."

#: src/Abilities/AbilityCatalog.php:117
msgid "Create a webhook"
msgstr "Utwórz webhook"

#: src/Abilities/AbilityCatalog.php:256
msgid "Create a webhook chain"
msgstr "Utwórz łańcuch webhooków"

#: src/Abilities/AbilityRegistrar.php:95
msgid ""
"Create and manage outgoing webhooks: triggers, field mappings, conditions, "
"chains, credentials and delivery logs."
msgstr ""
"Twórz i zarządzaj wychodzącymi webhookami: wyzwalacze, mapowania pól, "
"warunki, łańcuchy, poświadczenia i logi dostaw."

#: admin/src/views/VaultView.vue
msgid "Create credential"
msgstr "Utwórz uwierzytelnienie"

#: admin/src/views/ApiTokensView.vue
msgid "Create first token"
msgstr "Utwórz pierwszy token"

#: admin/src/components/CreateTokenDialog.vue
msgid "Create token"
msgstr "Utwórz token"

#: admin/src/views/WebhooksList.vue
msgid "Create your first webhook"
msgstr "Utwórz swój pierwszy webhook"

#: admin/src/components/LogsTable.vue admin/src/views/ApiTokensView.vue admin/src/views/VaultView.vue
msgid "Created"
msgstr "Utworzono"

#: admin/src/components/ImportDialog.vue
msgid "Created “%s”"
msgstr "Utworzono „%s”"

#: admin/src/components/CreateTokenDialog.vue admin/src/components/ImportDialog.vue
msgid "Creating…"
msgstr "Tworzenie…"

#: src/Api/WebhookSchema.php:137
msgid "Creation date."
msgstr "Data utworzenia."

#: src/Abilities/TestAbilities.php:292
msgid "Credential could not be decrypted."
msgstr "Nie udało się odszyfrować uwierzytelnienia."

#: admin/src/components/ImportDialog.vue admin/src/components/WebhookForm.vue
msgid "Credential name"
msgstr "Nazwa uwierzytelnienia"

#: admin/src/components/AiStepControls.vue
msgid "Credential name (e.g. WP REST admin)"
msgstr "Nazwa uwierzytelnienia (np. WP REST admin)"

#: admin/src/components/AiStepControls.vue
msgid "Credential name (e.g. n8n auth)"
msgstr "Nazwa uwierzytelnienia (np. n8n auth)"

#: src/Api/CredentialsController.php:257
#: src/Api/CredentialsController.php:311
msgid "Credential name is required."
msgstr "Nazwa uwierzytelnienia jest wymagana."

#: src/Abilities/TestAbilities.php:288
#: src/Abilities/WriteAbilities.php:188
#: src/Api/CredentialsController.php:459
msgid "Credential not found."
msgstr "Nie znaleziono uwierzytelnienia."

#: admin/src/App.vue admin/src/components/WebhookForm.vue admin/src/views/VaultView.vue
msgid "Credentials Vault"
msgstr "Sejf uwierzytelnień"

#: admin/src/components/AiProviderSettings.vue
msgid "Credentials source"
msgstr "Źródło uwierzytelnień"

#: admin/src/components/BuildPublishFields.vue
msgid "Credit yourself (optional)"
msgstr "Podpisz się (opcjonalnie)"

#: admin/src/components/AiProviderSettings.vue
msgid "Credits this month"
msgstr "Kredyty w tym miesiącu"

#: admin/src/views/ActivityView.vue
msgid "Cron"
msgstr "Cron"

#: admin/src/views/SettingsView.vue
msgid "Cron URL"
msgstr "Adres URL crona"

#: src/Controllers/DispatcherController.php:117
msgid "Cron secret not configured."
msgstr "Sekret crona nie został skonfigurowany."

#: admin/src/views/SettingsView.vue
msgid "Cron token regenerated. Update your crontab with the new command."
msgstr ""
"Token crona został wygenerowany ponownie. Zaktualizuj crontab nowym "
"poleceniem."

#: admin/src/views/SettingsView.vue
msgid "Crontab Command"
msgstr "Polecenie crontab"

#: src/Api/LogsController.php:529
msgid "Current page of results."
msgstr "Bieżąca strona wyników."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Custom"
msgstr "Niestandardowy"

#: admin/src/views/VaultView.vue
msgid "Custom Authorization value"
msgstr "Własna wartość Authorization"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Custom Payload"
msgstr "Niestandardowe dane"

#: admin/src/components/WebhookForm.vue
msgid "Custom Request Headers"
msgstr "Niestandardowe nagłówki żądania"

#: admin/src/components/AiStepControls.vue
msgid "Custom header"
msgstr "Własny nagłówek"

#: src/Api/WebhooksController.php:124
msgid "Custom payload JSON (required when payload_source is custom)."
msgstr "Niestandardowe dane JSON (wymagane, gdy payload_source jest custom)."

#: admin/src/views/SettingsView.vue
msgid "Danger Zone"
msgstr "Strefa zagrożenia"

#: admin/src/views/SettingsView.vue
msgid "Database Version"
msgstr "Wersja bazy danych"

#: admin/src/views/QueueView.vue
msgid "Database-backed webhook job queue"
msgstr "Kolejka zadań webhooków oparta na bazie danych"

#: admin/src/components/LogsTable.vue
msgid "Date"
msgstr "Data"

#: admin/src/views/ProView.vue
msgid "Deactivate"
msgstr "Dezaktywuj"

#: admin/src/views/ProView.vue
msgid "Deactivate License"
msgstr "Dezaktywuj licencję"

#: admin/src/views/ProView.vue
msgid "Deactivate license?"
msgstr "Dezaktywować licencję?"

#: admin/src/views/ProView.vue
msgid "Deactivating…"
msgstr "Dezaktywowanie…"

#: admin/src/views/SettingsView.vue
msgid "Delay doubles each retry: 2ⁿ × base, capped at max"
msgstr ""
"Opóźnienie podwaja się przy każdym ponowieniu: 2ⁿ × baza, ograniczone do "
"maks."

#: admin/src/views/SettingsView.vue
msgid "Delay grows evenly: n × base seconds"
msgstr "Opóźnienie rośnie równomiernie: n × baza sekund"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Delay preview"
msgstr "Podgląd opóźnień"

#: admin/src/components/LogsTable.vue admin/src/components/WebhookCardContent.vue admin/src/views/ActivityView.vue admin/src/views/WebhooksList.vue
msgid "Delete"
msgstr "Usuń"

#: admin/src/views/SettingsView.vue
msgid "Delete All Logs"
msgstr "Usuń wszystkie logi"

#: admin/src/views/ActivityView.vue
msgid "Delete Old Activity"
msgstr "Usuń starą aktywność"

#: src/Abilities/GlueAbilities.php:150
msgid "Delete a Code Glue snippet"
msgstr "Usuń snippet Code Glue"

#: src/Abilities/AbilityCatalog.php:346
msgid "Delete a webhook"
msgstr "Usuń webhook"

#: admin/src/views/AiBuilderView.vue
msgid "Delete build"
msgstr "Usuń projekt"

#: admin/src/views/WebhooksList.vue
msgid "Delete chain"
msgstr "Usuń łańcuch"

#: admin/src/views/WebhooksList.vue
msgid "Delete chain “%s”?"
msgstr "Usunąć łańcuch „%s”?"

#: admin/src/views/VaultView.vue
msgid "Delete credential"
msgstr "Usuń uwierzytelnienie"

#: admin/src/views/VaultView.vue
msgid "Delete credential: %s"
msgstr "Usuń uwierzytelnienie: %s"

#: admin/src/views/ActivityView.vue
msgid "Delete entries older than"
msgstr "Usuń wpisy starsze niż"

#: src/Api/ActivityLogController.php:39
msgid "Delete entries older than specified days."
msgstr "Usuń wpisy starsze niż określona liczba dni."

#: admin/src/components/LogsTable.vue
msgid "Delete log?"
msgstr "Usunąć log?"

#: src/Api/LogsController.php:64
msgid "Delete logs older than specified days."
msgstr "Usuń logi starsze niż określona liczba dni."

#: admin/src/views/ActivityView.vue
msgid "Delete old"
msgstr "Usuń stare"

#: admin/src/components/AiBuildsBar.vue
msgid "Delete this build"
msgstr "Usuń ten projekt"

#: admin/src/views/AiBuilderView.vue
msgid "Delete this build?"
msgstr "Usunąć ten projekt?"

#: admin/src/views/ApiTokensView.vue
msgid "Delete token"
msgstr "Usuń token"

#: admin/src/views/ApiTokensView.vue
msgid "Delete token: %s"
msgstr "Usuń token: %s"

#: admin/src/views/WebhooksList.vue
msgid "Delete “%s”?"
msgstr "Usunąć „%s”?"

#: admin/src/views/VaultView.vue
msgid ""
"Deleting with force will detach it from %d webhook; that webhook will send "
"no Authorization header until reconfigured."
msgid_plural ""
"Deleting with force will detach it from %d webhooks; those webhooks will "
"send no Authorization header until reconfigured."
msgstr[0] ""
"Wymuszone usunięcie odłączy je od %d webhooka; ten webhook nie wyśle "
"nagłówka Authorization do czasu ponownej konfiguracji."
msgstr[1] ""
"Wymuszone usunięcie odłączy je od %d webhooków; te webhooki nie wyślą "
"nagłówka Authorization do czasu ponownej konfiguracji."
msgstr[2] ""
"Wymuszone usunięcie odłączy je od %d webhooków; te webhooki nie wyślą "
"nagłówka Authorization do czasu ponownej konfiguracji."

#: admin/src/views/ApiTokensView.vue admin/src/views/VaultView.vue
msgid "Deleting…"
msgstr "Usuwanie…"

#: admin/src/views/ProView.vue
msgid "Delivery logs & replay"
msgstr "Logi dostarczania i odtwarzanie"

#: src/Abilities/AbilityCatalog.php:79
msgid ""
"Describe a REST API route ON THIS SITE (core or any plugin) from its "
"self-declared schema: every argument with its type, description and whether "
"it is REQUIRED. ALWAYS run this before building an internal automation (a "
"webhook whose endpoint_url points at this site's own wp-json) and satisfy "
"every required argument — e.g. POST /wp/v2/users requires username, email "
"AND password, which mapping alone cannot always supply. Pass the route path "
"relative to /wp-json (e.g. \"/wp/v2/users\") and the HTTP method you plan "
"to use. Internal routes only — it cannot describe external APIs."
msgstr ""
"Opisz trasę REST API NA TEJ WITRYNIE (rdzeń lub dowolna wtyczka) na "
"podstawie jej własnego schematu: każdy argument z typem, opisem i "
"informacją, czy jest WYMAGANY. ZAWSZE uruchom to przed budową automatyzacji "
"wewnętrznej (webhooka, którego endpoint_url wskazuje na wp-json tej "
"witryny) i uzupełnij każdy wymagany argument — np. POST /wp/v2/users wymaga "
"username, email ORAZ password, czego samo mapowanie nie zawsze zapewni. "
"Podaj ścieżkę trasy względem /wp-json (np. \"/wp/v2/users\") oraz planowaną "
"metodę HTTP. Tylko trasy wewnętrzne — nie opisuje zewnętrznych API."

#: admin/src/views/AiBuilderView.vue
msgid ""
"Describe the integration in plain words. The agent plans it, then builds "
"and tests it for you."
msgstr ""
"Opisz integrację zwykłymi słowami. Agent ją zaplanuje, a potem zbuduje i "
"przetestuje za Ciebie."

#: admin/src/views/AiBuilderView.vue
msgid ""
"Describe the integration or automation you want. The agent proposes a plan "
"you can review and ask for changes, then builds and tests it for you."
msgstr ""
"Opisz integrację lub automatyzację, której potrzebujesz. Agent zaproponuje "
"plan, który możesz przejrzeć i poprosić o zmiany, a potem zbuduje ją i "
"przetestuje za Ciebie."

#: admin/src/views/AiBuilderView.vue
msgid "Describe what to build…"
msgstr "Opisz, co zbudować…"

#: flowsystems-webhook-actions.php
#. Description of the plugin
msgid ""
"Describe what you want in chat — the built-in AI agent plans, builds, and "
"tests your WordPress webhooks, integrations, and automations."
msgstr ""
"Opisz na czacie, czego potrzebujesz — wbudowany agent AI planuje, buduje i "
"testuje Twoje webhooki, integracje i automatyzacje WordPressa."

#: admin/src/components/ShareBuildDialog.vue
msgid "Described"
msgstr "Opisano"

#: admin/src/components/WebhookForm.vue admin/src/views/WebhooksList.vue
msgid "Description (optional)"
msgstr "Opis (opcjonalnie)"

#: src/Api/ChainsController.php:141
#: src/Api/WebhooksController.php:314
#. translators: %d: maximum character count
#, php-format
msgid "Description must be %d characters or fewer."
msgstr "Opis może mieć maksymalnie %d znaków."

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Descriptions travel with the build and are saved here too — they are what "
"makes a shared build understandable to someone else."
msgstr ""
"Opisy podróżują razem z konfiguracją i są też zapisywane tutaj — to dzięki "
"nim udostępniona konfiguracja jest zrozumiała dla kogoś innego."

#: src/Abilities/TestAbilities.php:89
msgid "Destructive probe methods (PUT, PATCH, DELETE) require confirmation."
msgstr "Destrukcyjne metody sondowania (PUT, PATCH, DELETE) wymagają potwierdzenia."

#: admin/src/components/WebhookCardContent.vue admin/src/views/SettingsView.vue
msgid "Disabled"
msgstr "Wyłączony"

#: admin/src/components/WebhookForm.vue
msgid ""
"Disabled webhooks still capture payload examples for mapping and conditions "
"configuration."
msgstr ""
"Wyłączone webhooki nadal przechwytują przykładowe dane do konfiguracji "
"mapowania i warunków."

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Discard"
msgstr "Odrzuć"

#: admin/src/App.vue
msgid "Dismiss"
msgstr "Zamknij"

#: admin/src/components/ConditionsEditor.vue
msgid "Does not match example payload"
msgstr "Nie pasuje do przykładowych danych"

#: admin/src/views/ProView.vue
msgid "Don't have a license yet?"
msgstr "Nie masz jeszcze licencji?"

#: admin/src/components/WebhookForm.vue admin/src/views/WebhooksList.vue
msgid "Don't show this again"
msgstr "Nie pokazuj tego ponownie"

#: admin/src/components/AiStepPanel.vue admin/src/components/ImportDialog.vue admin/src/components/ShareBuildDialog.vue admin/src/components/TokenCreatedDialog.vue
msgid "Done"
msgstr "Gotowe"

#: admin/src/components/KeyValueEditor.vue
msgid "Dot-path (e.g. event.id) or static text"
msgstr "Ścieżka kropkowa (np. event.id) lub statyczny tekst"

#: admin/src/views/SettingsView.vue
msgid "Download Archive (ZIP)"
msgstr "Pobierz archiwum (ZIP)"

#: admin/src/components/ExportDialog.vue admin/src/components/ShareBuildDialog.vue
msgid "Download JSON"
msgstr "Pobierz JSON"

#: admin/src/components/ExportDialog.vue
msgid ""
"Download a portable JSON build. Secrets are never included — imported auth "
"is re-linked to your vault."
msgstr ""
"Pobierz przenośną konfigurację JSON. Sekrety nigdy nie są dołączane — przy "
"imporcie uwierzytelnienia są podpinane do Twojego sejfu."

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Download everything this build created as a portable JSON file. Secrets are "
"never included — whoever imports it re-links auth to their own vault."
msgstr ""
"Pobierz wszystko, co utworzyła ta konfiguracja, jako przenośny plik JSON. "
"Sekrety nigdy nie są dołączane — osoba importująca podpina uwierzytelnienia "
"do własnego sejfu."

#: admin/src/views/WebhooksList.vue
msgid ""
"Downstream webhooks that lose their only trigger will be marked as orphans "
"(no trigger assigned)."
msgstr ""
"Webhooki w dół łańcucha, które stracą swój jedyny wyzwalacz, zostaną "
"oznaczone jako osierocone (bez przypisanego wyzwalacza)."

#: admin/src/components/ImportDialog.vue
msgid "Drop a build JSON here, or click to browse"
msgstr "Upuść tutaj plik JSON konfiguracji lub kliknij, aby wybrać"

#: admin/src/components/ImportDialog.vue
msgid "Drop to import"
msgstr "Upuść, aby zaimportować"

#: admin/src/views/QueueView.vue
msgid "Due"
msgstr "Należne"

#: admin/src/views/QueueView.vue
msgid "Due Now"
msgstr "Należne teraz"

#: admin/src/components/LogsTable.vue
msgid "Duration"
msgstr "Czas trwania"

#: admin/src/views/ProView.vue
msgid "Dynamic URL templates resolved from the payload"
msgstr "Dynamiczne szablony URL rozwiązywane z payloadu"

#: src/Abilities/WriteAbilities.php:327
msgid "Each condition rule must be an object {field, operator, value}."
msgstr "Każda reguła warunku musi być obiektem {field, operator, value}."

#: admin/src/components/TriggerSchemaPanel.vue admin/src/components/WebhookCardContent.vue
msgid "Edit"
msgstr "Edytuj"

#: admin/src/views/WebhookEdit.vue
msgid "Edit Webhook"
msgstr "Edytuj webhook"

#: admin/src/views/WebhooksList.vue
msgid "Edit chain"
msgstr "Edytuj łańcuch"

#: admin/src/views/VaultView.vue
msgid "Edit credential"
msgstr "Edytuj uwierzytelnienie"

#: admin/src/components/ImportDialog.vue
msgid "Edit “%s”"
msgstr "Edytuj „%s”"

#: src/Abilities/AbilityCatalog.php:331
msgid "Enable (go live) or disable a webhook. Enabling requires confirmation."
msgstr "Włącz (uruchom) lub wyłącz webhook. Włączenie wymaga potwierdzenia."

#: src/Abilities/AbilityCatalog.php:330
msgid "Enable / disable a webhook"
msgstr "Włącz / wyłącz webhook"

#: admin/src/components/WebhookForm.vue admin/src/views/WebhooksList.vue
msgid "Enable Anyway"
msgstr "Włącz mimo to"

#: admin/src/views/ExternalCronView.vue
msgid "Enable External Cron"
msgstr "Włącz zewnętrzny cron"

#: admin/src/components/WebhookForm.vue admin/src/views/WebhooksList.vue
msgid "Enable Synchronous Execution?"
msgstr "Włączyć wykonywanie synchroniczne?"

#: admin/src/components/ConditionsEditor.vue
msgid "Enable conditional dispatch"
msgstr "Włącz warunkowe wysyłanie"

#: admin/src/components/BuiltWebhookActions.vue
msgid "Enable webhook"
msgstr "Włącz webhook"

#: admin/src/components/WebhookForm.vue
msgid "Enabled Webhook"
msgstr "Webhook włączony"

#: admin/src/components/WebhookForm.vue
msgid "Endpoint URL"
msgstr "Adres URL punktu końcowego"

#: admin/src/components/WebhookForm.vue
msgid "Endpoint URL is required"
msgstr "Adres URL punktu końcowego jest wymagany"

#: src/Api/WebhooksController.php:244
msgid "Endpoint URL is required."
msgstr "Adres URL punktu końcowego jest wymagany."

#: admin/src/components/WebhookForm.vue
msgid "Enter an Authorization header value first."
msgstr "Najpierw wprowadź wartość nagłówka Authorization."

#: admin/src/components/TriggerSelect.vue
msgid "Enter custom hook name..."
msgstr "Wprowadź niestandardową nazwę hooka..."

#: admin/src/views/AiBuilderView.vue
msgid "Enter to build, Shift+Enter for a new line."
msgstr "Enter, aby zbudować; Shift+Enter, aby przejść do nowej linii."

#: admin/src/views/ProView.vue
msgid "Enter your license key to unlock Pro features on this site."
msgstr "Wprowadź klucz licencyjny, aby odblokować funkcje Pro na tej witrynie."

#: admin/src/components/LogsTable.vue admin/src/components/PayloadGlueDrawer.vue admin/src/components/TestWebhookDrawer.vue admin/src/views/LogsList.vue
msgid "Error"
msgstr "Błąd"

#: admin/src/components/LogsTable.vue
msgid "Error Message"
msgstr "Komunikat błędu"

#: admin/src/components/HealthStatusBar.vue admin/src/views/LogsList.vue admin/src/views/WebhookLogs.vue
msgid "Errors"
msgstr "Błędy"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Evaluate conditions against"
msgstr "Oceniaj warunki względem"

#: admin/src/views/WebhookLogs.vue
msgid "Event Replayed"
msgstr "Zdarzenie odtworzone"

#: admin/src/components/LogsTable.vue
msgid "Event UUID"
msgstr "UUID zdarzenia"

#: admin/src/views/QueueView.vue
msgid "Event UUID:"
msgstr "UUID zdarzenia:"

#: admin/src/views/LogsList.vue
msgid "Event replayed"
msgstr "Zdarzenie odtworzone"

#: src/App.php:133
msgid "Every Minute"
msgstr "Co minutę"

#: admin/src/views/AiBuilderView.vue
msgid "Every time a WooCommerce order is completed, post the line items to Airtable"
msgstr ""
"Za każdym razem, gdy zamówienie WooCommerce zostanie zrealizowane, wyślij "
"pozycje zamówienia do Airtable"

#: admin/src/views/AiBuilderView.vue
msgid ""
"Everything you have built stays on this site. Connect a model to keep going "
"— the first two cost nothing."
msgstr ""
"Wszystko, co zbudowałeś, zostaje na tej witrynie. Podłącz model, aby "
"kontynuować — dwa pierwsze nic nie kosztują."

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Example from the WP Webhooks Payload Library — not captured on this site"
msgstr "Przykład z WP Webhooks Payload Library — nie przechwycony na tej witrynie"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Example payload captured"
msgstr "Przechwycono przykładowe dane"

#: admin/src/components/ConditionsEditor.vue
msgid "Example payload would %1$s%2$s%3$s"
msgstr "Przykładowe dane zostałyby %1$s%2$s%3$s"

#: admin/src/components/MappingEditor.vue
msgid "Exclude entire %s"
msgstr "Wyklucz cały %s"

#: admin/src/components/MappingEditor.vue
msgid "Exclude field"
msgstr "Wyklucz pole"

#: admin/src/components/MappingEditor.vue
msgid "Excluded Fields"
msgstr "Wykluczone pola"

#: admin/src/views/QueueView.vue
msgid "Execute"
msgstr "Wykonaj"

#: admin/src/views/WebhookLogs.vue
msgid "Execute Now"
msgstr "Wykonaj teraz"

#: admin/src/views/QueueView.vue
msgid "Execute now"
msgstr "Wykonaj teraz"

#: admin/src/components/WebhookCardContent.vue
msgid "Executes synchronously (blocking)"
msgstr "Wykonuje synchronicznie (blokująco)"

#: admin/src/views/ApiTokensView.vue
msgid "Expired"
msgstr "Wygasł"

#: admin/src/views/ApiTokensView.vue
msgid "Expires"
msgstr "Wygasa"

#: admin/src/components/ChangeExpiryDialog.vue admin/src/components/CreateTokenDialog.vue admin/src/components/RotateTokenDialog.vue
msgid "Expires at"
msgstr "Wygasa"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Exponential"
msgstr "Wykładnicza"

#: admin/src/views/SettingsView.vue
msgid "Exponential — base 30 s, cap 3600 s"
msgstr "Wykładnicza — baza 30 s, limit 3600 s"

#: admin/src/components/WebhookCardContent.vue admin/src/views/WebhooksList.vue
msgid "Export"
msgstr "Eksportuj"

#: admin/src/views/WebhooksList.vue
msgid "Export chain"
msgstr "Eksportuj łańcuch"

#: admin/src/components/ExportDialog.vue
msgid "Export everything"
msgstr "Eksportuj wszystko"

#: admin/src/components/ExportDialog.vue admin/src/components/ShareBuildDialog.vue admin/src/views/WebhooksList.vue
msgid "Export failed."
msgstr "Eksport nie powiódł się."

#: admin/src/components/ExportDialog.vue
msgid "Export webhooks & chains"
msgstr "Eksportuj webhooki i łańcuchy"

#: admin/src/components/ExportDialog.vue admin/src/components/ShareBuildDialog.vue
msgid "Exporting…"
msgstr "Eksportowanie…"

#: admin/src/views/SettingsView.vue
msgid ""
"External AI tools connected over MCP — Claude, Cursor and the like — can "
"create, edit and test webhooks for you, the same way Build with AI does. "
"Deleting a webhook, taking one live or firing a test always needs an "
"explicit confirmation first. Turn this off to hold connected tools to "
"read-only; Build with AI is unaffected either way."
msgstr ""
"Zewnętrzne narzędzia AI podłączone przez MCP — Claude, Cursor i podobne — "
"mogą tworzyć, edytować i testować webhooki za Ciebie, tak samo jak Build "
"with AI. Usunięcie webhooka, uruchomienie go na żywo lub wysłanie testu "
"zawsze wymaga najpierw wyraźnego potwierdzenia. Wyłącz to, aby ograniczyć "
"podłączone narzędzia do odczytu; Build with AI działa tak samo w obu "
"przypadkach."

#: admin/src/App.vue admin/src/views/ExternalCronView.vue
msgid "External Cron"
msgstr "Zewnętrzny cron"

#: admin/src/views/ProView.vue
msgid "External Cron (bypass WP-Cron)"
msgstr "Zewnętrzny cron (pominięcie WP-Cron)"

#: admin/src/views/ExternalCronView.vue
msgid "External Cron History"
msgstr "Historia zewnętrznego crona"

#: admin/src/components/AiProviderSettings.vue
msgid "Extra credits (never expire)"
msgstr "Dodatkowe kredyty (nie wygasają)"

#: src/Api/WebhookSchema.php:68
msgid "Extra request headers as key-value pairs."
msgstr "Dodatkowe nagłówki żądania jako pary klucz-wartość."

#: admin/src/components/ExternalCronChart.vue
msgid "Fail"
msgstr "Niepowodzenie"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Failed"
msgstr "Niepowodzenie"

#: src/Api/ApiTokensController.php:166
msgid "Failed to create API token."
msgstr "Nie udało się utworzyć tokena API."

#: src/Api/ChainsController.php:272
msgid "Failed to create chain link (it may already exist)."
msgstr "Nie udało się utworzyć połączenia łańcucha (być może już istnieje)."

#: src/Abilities/WriteAbilities.php:233
msgid "Failed to create chain link."
msgstr "Nie udało się utworzyć ogniwa łańcucha."

#: src/Abilities/WriteAbilities.php:215
#: src/Api/ChainsController.php:167
msgid "Failed to create chain."
msgstr "Nie udało się utworzyć łańcucha."

#: src/Api/CredentialsController.php:284
msgid "Failed to create credential."
msgstr "Nie udało się utworzyć uwierzytelnienia."

#: src/Abilities/GlueAbilities.php:231
#: src/Api/SnippetsController.php:176
msgid "Failed to create snippet."
msgstr "Nie udało się utworzyć snippetu."

#: src/Abilities/WriteAbilities.php:72
#: src/Api/WebhooksController.php:270
msgid "Failed to create webhook."
msgstr "Nie udało się utworzyć webhooka."

#: src/Api/ApiTokensController.php:279
msgid "Failed to delete API token."
msgstr "Nie udało się usunąć tokena API."

#: src/Api/CredentialsController.php:396
msgid "Failed to delete credential."
msgstr "Nie udało się usunąć uwierzytelnienia."

#: src/Api/LogsController.php:270
msgid "Failed to delete log."
msgstr "Nie udało się usunąć wpisu logu."

#: src/Api/QueueController.php:345
msgid "Failed to delete queue job."
msgstr "Nie udało się usunąć zadania kolejki."

#: src/Api/SchemasController.php:371
msgid "Failed to delete schema."
msgstr "Nie udało się usunąć schematu."

#: src/Abilities/WriteAbilities.php:260
#: src/Api/WebhooksController.php:470
msgid "Failed to delete webhook."
msgstr "Nie udało się usunąć webhooka."

#: src/Services/WPHttpTransport.php:27
msgid "Failed to encode payload as JSON"
msgstr "Nie udało się zakodować danych jako JSON"

#: admin/src/composables/useChains.js
msgid "Failed to fetch chains"
msgstr "Nie udało się pobrać łańcuchów"

#: admin/src/composables/useHealthStats.js
msgid "Failed to fetch health stats"
msgstr "Nie udało się pobrać statystyk kondycji"

#: admin/src/composables/useSchemas.js
msgid "Failed to fetch schemas"
msgstr "Nie udało się pobrać schematów"

#: admin/src/composables/useSnippets.js
msgid "Failed to fetch snippets"
msgstr "Nie udało się pobrać fragmentów"

#: admin/src/composables/useSnippets.js
msgid "Failed to fetch trigger snippet"
msgstr "Nie udało się pobrać fragmentu wyzwalacza"

#: admin/src/composables/useSchemas.js
msgid "Failed to fetch user triggers"
msgstr "Nie udało się pobrać wyzwalaczy użytkownika"

#: admin/src/views/WebhooksList.vue
msgid "Failed to rename chain."
msgstr "Nie udało się zmienić nazwy łańcucha."

#: src/Api/SchemasController.php:403
msgid "Failed to reset capture."
msgstr "Nie udało się zresetować przechwytywania."

#: src/Api/LogsController.php:344
msgid "Failed to retry job."
msgstr "Nie udało się ponowić zadania."

#: src/Api/QueueController.php:387
msgid "Failed to retry queue job."
msgstr "Nie udało się ponowić zadania kolejki."

#: src/Api/ApiTokensController.php:213
msgid "Failed to rotate API token."
msgstr "Nie udało się rotować tokena API."

#: src/Abilities/WriteAbilities.php:172
msgid "Failed to save conditions."
msgstr "Nie udało się zapisać warunków."

#: src/Abilities/WriteAbilities.php:148
msgid "Failed to save mapping."
msgstr "Nie udało się zapisać mapowania."

#: admin/src/composables/useSnippets.js
msgid "Failed to save trigger snippet"
msgstr "Nie udało się zapisać fragmentu wyzwalacza"

#: src/Api/AgentController.php:404
msgid "Failed to start a conversation."
msgstr "Nie udało się rozpocząć rozmowy."

#: src/Api/AgentController.php:268
msgid "Failed to store the provider key."
msgstr "Nie udało się zapisać klucza dostawcy."

#: src/Api/WebhooksController.php:512
msgid "Failed to toggle webhook status."
msgstr "Nie udało się przełączyć statusu webhooka."

#: src/Api/SchemasController.php:323
msgid "Failed to update schema."
msgstr "Nie udało się zaktualizować schematu."

#: src/Abilities/WriteAbilities.php:134
#: src/Api/WebhooksController.php:412
msgid "Failed to update webhook."
msgstr "Nie udało się zaktualizować webhooka."

#: admin/src/components/MappingEditor.vue
msgid "Field Mappings"
msgstr "Mapowania pól"

#: admin/src/components/TestWebhookDrawer.vue
msgid ""
"Field mapping applied first, then pre-dispatch Code Glue — the dispatch "
"order"
msgstr ""
"Najpierw mapowanie pól, potem Code Glue przed wysyłką — kolejność jak przy "
"wysyłce"

#: src/Api/SchemasController.php:90
msgid "Field mapping configuration."
msgstr "Konfiguracja mapowania pól."

#: admin/src/views/SettingsView.vue
msgid "Files"
msgstr "Pliki"

#: admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "Filter by X-Webhook-ID…"
msgstr "Filtruj po X-Webhook-ID…"

#: src/Api/ActivityLogController.php:148
msgid "Filter by action prefix (e.g. \"webhook\")."
msgstr "Filtruj według prefiksu akcji (np. „webhook”)."

#: src/Api/LogsController.php:563
msgid "Filter by event UUID (exact match)."
msgstr "Filtruj według UUID zdarzenia (dokładne dopasowanie)."

#: admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "Filter by event UUID…"
msgstr "Filtruj po UUID zdarzenia…"

#: src/Api/ActivityLogController.php:147
msgid "Filter by exact action string."
msgstr "Filtruj według dokładnego ciągu akcji."

#: src/Api/LogsController.php:546
msgid "Filter by status."
msgstr "Filtruj według statusu."

#: src/Api/LogsController.php:567
msgid "Filter by target URL (partial match)."
msgstr "Filtruj według docelowego adresu URL (częściowe dopasowanie)."

#: admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "Filter by target URL…"
msgstr "Filtruj po docelowym URL…"

#: src/Api/LogsController.php:551
msgid "Filter by trigger name."
msgstr "Filtruj według nazwy wyzwalacza."

#: src/Api/LogsController.php:134
#: src/Api/LogsController.php:542
msgid "Filter by webhook ID."
msgstr "Filtruj według identyfikatora webhooka."

#: src/Api/LogsController.php:571
msgid "Filter by webhook UUID (X-Webhook-Id header value)."
msgstr "Filtruj według UUID webhooka (wartość nagłówka X-Webhook-Id)."

#: src/Api/ActivityLogController.php:152
msgid "Filter from UTC datetime (Y-m-d H:i:s)."
msgstr "Filtruj od daty i czasu UTC (Y-m-d H:i:s)."

#: src/Api/LogsController.php:555
msgid "Filter logs from this date."
msgstr "Filtruj logi od tej daty."

#: src/Api/LogsController.php:559
msgid "Filter logs until this date."
msgstr "Filtruj logi do tej daty."

#: src/Api/ActivityLogController.php:153
msgid "Filter until UTC datetime (Y-m-d H:i:s)."
msgstr "Filtruj do daty i czasu UTC (Y-m-d H:i:s)."

#: admin/src/views/VaultView.vue
msgid "Finish moving the key into wp-config.php"
msgstr "Dokończ przenoszenie klucza do wp-config.php"

#: admin/src/components/AiStepControls.vue
msgid ""
"Fire the event once on this site to capture your real payload, then retry — "
"the mapping will be built from your own fields. Or skip this step and map "
"them by hand."
msgstr ""
"Wywołaj zdarzenie raz na tej witrynie, aby przechwycić prawdziwy payload, a "
"potem ponów — mapowanie zostanie zbudowane z Twoich własnych pól. Albo "
"pomiń ten krok i zmapuj je ręcznie."

#: admin/src/components/AiStepControls.vue
msgid "Fix it"
msgstr "Napraw to"

#: admin/src/views/AiBuilderView.vue
msgid ""
"Fix the build so this passes — adjust the field mapping or the pre-dispatch "
"Code Glue snippet as needed — then test again before enabling."
msgstr ""
"Popraw build tak, aby ten test przeszedł — dostosuj mapowanie pól lub "
"snippet pre-dispatch Code Glue — a potem przetestuj ponownie przed "
"włączeniem."

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Fixed"
msgstr "Stała"

#: admin/src/components/ShareBuildDialog.vue
msgid "Flagged: %s"
msgstr "Oznaczono: %s"

#: admin/src/views/SettingsView.vue
msgid ""
"For reliable webhook delivery, set up a system cron job to process the "
"queue every minute. WP-Cron serves as a fallback when system cron isn't "
"configured."
msgstr ""
"Aby zapewnić niezawodne dostarczanie webhooków, skonfiguruj systemowe "
"zadanie cron przetwarzające kolejkę co minutę. WP-Cron służy jako "
"rozwiązanie awaryjne, gdy systemowy cron nie jest skonfigurowany."

#: admin/src/views/VaultView.vue
msgid "Force delete & detach"
msgstr "Wymuś usunięcie i odłącz"

#: admin/src/components/AiProviderSettings.vue admin/src/views/AiBuilderView.vue
msgid "Free trial"
msgstr "Darmowy okres próbny"

#: admin/src/views/AiBuilderView.vue
msgid "Free trial — starts with your first prompt"
msgstr "Darmowy okres próbny — zaczyna się od pierwszego promptu"

#: admin/src/views/ActivityView.vue
msgid "From date"
msgstr "Od daty"

#: admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "From date & time"
msgstr "Od daty i godziny"

#: admin/src/components/CreateTokenDialog.vue
msgid "Full"
msgstr "Pełny"

#: admin/src/views/ProView.vue
msgid "Full REST API with API token authentication"
msgstr "Pełne REST API z uwierzytelnianiem tokenem API"

#: admin/src/components/TestWebhookDrawer.vue
msgid ""
"Full pipeline in dispatch order — post-dispatch Code Glue fires after "
"delivery"
msgstr ""
"Pełny przepływ w kolejności wysyłki — Code Glue po wysyłce uruchamia się po "
"dostarczeniu"

#: admin/src/views/ApiTokensView.vue
msgid ""
"Full write power for AI assistants — but can never reveal auth headers or "
"vault secrets"
msgstr ""
"Pełne uprawnienia zapisu dla asystentów AI — ale nigdy nie ujawnia "
"nagłówków uwierzytelniania ani sekretów sejfu"

#: admin/src/components/CreateTokenDialog.vue
msgid "Full write power, but can never reveal auth headers or vault secrets"
msgstr ""
"Pełne uprawnienia do zapisu, ale nigdy nie ujawnia nagłówków "
"uwierzytelniania ani sekretów sejfu"

#: admin/src/views/ApiTokensView.vue
msgid "GET webhooks, logs, queue, health, triggers, schemas"
msgstr "GET webhooków, logów, kolejki, kondycji, wyzwalaczy, schematów"

#: admin/src/components/CreateTokenDialog.vue
msgid "Generate a new API token for programmatic access."
msgstr "Wygeneruj nowy token API do dostępu programowego."

#: admin/src/views/ProView.vue
msgid "Get Pro"
msgstr "Kup Pro"

#: admin/src/views/AiBuilderView.vue
msgid "Get Pro credits"
msgstr "Kup kredyty Pro"

#: src/Abilities/GlueAbilities.php:59
msgid "Get a Code Glue snippet"
msgstr "Pobierz snippet Code Glue"

#: src/Abilities/AbilityCatalog.php:78
msgid "Get a REST route's argument schema (this site)"
msgstr "Pobierz schemat argumentów trasy REST (ta witryna)"

#: admin/src/components/AiProviderSettings.vue admin/src/views/AiBuilderView.vue
msgid "Get a free Gemini key"
msgstr "Uzyskaj darmowy klucz Gemini"

#: src/Abilities/GlueAbilities.php:60
msgid "Get a single Code Glue snippet by id, including its full PHP code."
msgstr "Pobierz pojedynczy snippet Code Glue po id, wraz z pełnym kodem PHP."

#: src/Abilities/AbilityCatalog.php:52
msgid ""
"Get a single webhook by id, including triggers, mapping, conditions, "
"headers and credential assignment."
msgstr ""
"Pobierz pojedynczy webhook po id, wraz z wyzwalaczami, mapowaniem, "
"warunkami, nagłówkami i przypisanym uwierzytelnieniem."

#: src/Abilities/AbilityCatalog.php:51
msgid "Get a webhook"
msgstr "Pobierz webhook"

#: src/Abilities/AbilityCatalog.php:63
msgid "Get captured payload + mapping for a trigger"
msgstr "Pobierz przechwycony ładunek + mapowanie dla wyzwalacza"

#: src/Abilities/AbilityCatalog.php:93
msgid "Get delivery logs"
msgstr "Pobierz logi dostarczania"

#: src/Api/PublishBuildController.php:103
msgid "Give the build a title."
msgstr "Nadaj buildowi tytuł."

#: admin/src/components/WebhookForm.vue
msgid "Give this credential a name."
msgstr "Nadaj temu uwierzytelnieniu nazwę."

#: admin/src/components/AiStepControls.vue
msgid ""
"Go and fire the event once — publish a test post, submit the form, place a "
"test order — then come back and retry."
msgstr ""
"Idź i wywołaj zdarzenie raz — opublikuj testowy wpis, wyślij formularz, "
"złóż testowe zamówienie — a potem wróć i ponów."

#: admin/src/components/ui/UpgradeBadge.vue
msgid "Go to Pro"
msgstr "Przejdź do Pro"

#: admin/src/views/LogsList.vue admin/src/views/WebhookLogs.vue
msgid "Go to Queue"
msgstr "Przejdź do kolejki"

#: admin/src/views/SettingsView.vue
msgid "Greyed out because this site sets DISALLOW_FILE_EDIT — see the notice above."
msgstr ""
"Wyszarzone, bo ta witryna ustawia DISALLOW_FILE_EDIT — zobacz powiadomienie "
"powyżej."

#: admin/src/components/ConditionsEditor.vue
msgid "Group does not match example payload"
msgstr "Grupa nie pasuje do przykładowych danych"

#: admin/src/components/ConditionsEditor.vue
msgid "Group matches example payload"
msgstr "Grupa pasuje do przykładowych danych"

#: admin/src/components/ConditionsEditor.vue
msgid "Group matches example payload: %1$s (based on %2$d rule)"
msgid_plural "Group matches example payload: %1$s (based on %2$d rules)"
msgstr[0] "Grupa pasuje do przykładowych danych: %1$s (na podstawie %2$d reguły)"
msgstr[1] "Grupa pasuje do przykładowych danych: %1$s (na podstawie %2$d reguł)"
msgstr[2] "Grupa pasuje do przykładowych danych: %1$s (na podstawie %2$d reguł)"

#: admin/src/components/LogsTable.vue admin/src/components/PayloadGlueDrawer.vue admin/src/components/TestWebhookDrawer.vue
msgid "HTTP %s"
msgstr "HTTP %s"

#: admin/src/components/LogsTable.vue
msgid "HTTP Code"
msgstr "Kod HTTP"

#: admin/src/components/WebhookForm.vue
msgid "HTTP Method"
msgstr "Metoda HTTP"

#: src/Api/WebhookSchema.php:61
msgid "HTTP method used for delivery."
msgstr "Metoda HTTP użyta do dostarczenia."

#: admin/src/components/ui/UpgradeBadge.vue
msgid "Head to the Pro tab?"
msgstr "Przejść do zakładki Pro?"

#: admin/src/views/VaultView.vue
msgid "Header"
msgstr "Nagłówek"

#: admin/src/components/WebhookForm.vue admin/src/views/VaultView.vue
msgid "Header name"
msgstr "Nazwa nagłówka"

#: admin/src/components/AiStepControls.vue admin/src/components/ImportDialog.vue
msgid "Header name (e.g. X-API-Key)"
msgstr "Nazwa nagłówka (np. X-API-Key)"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Headers"
msgstr "Nagłówki"

#: admin/src/views/VaultView.vue
msgid "Hide"
msgstr "Ukryj"

#: admin/src/components/DescriptionDisclosure.vue
msgid "Hide description"
msgstr "Ukryj opis"

#: admin/src/views/VaultView.vue
msgid "Hide password"
msgstr "Ukryj hasło"

#: admin/src/views/VaultView.vue
msgid "Hide secret"
msgstr "Ukryj sekret"

#: admin/src/views/ApiTokensView.vue admin/src/views/VaultView.vue
msgid "Hint"
msgstr "Wskazówka"

#: admin/src/views/VaultView.vue
msgid "How secrets are protected"
msgstr "Jak chronione są sekrety"

#: src/Api/WebhookSchema.php:111
msgid ""
"How the wait between retries grows. Null inherits the site-wide setting, "
"then exponential."
msgstr ""
"Jak rośnie odstęp między ponowieniami. Null dziedziczy ustawienie witryny, "
"a potem wykładniczy."

#: admin/src/components/WebhookForm.vue
msgid "How to calculate the wait between retries. Overrides the global setting."
msgstr ""
"Jak obliczać czas oczekiwania między ponowieniami. Zastępuje ustawienie "
"globalne."

#: src/Api/WebhooksController.php:128
msgid "How to run the test: now (synchronous) or queue (async)."
msgstr "Jak uruchomić test: now (synchronicznie) lub queue (asynchronicznie)."

#: admin/src/components/AiStepControls.vue
msgid "I fired it — retry"
msgstr "Wywołałem — ponów"

#: admin/src/components/TokenCreatedDialog.vue
msgid "I've saved it elsewhere"
msgstr "Zapisałem go w innym miejscu"

#: src/Api/WebhookSchema.php:56
msgid ""
"ID of a vault credential to use for authorization. Takes precedence over "
"auth_header."
msgstr ""
"Identyfikator uwierzytelnienia z sejfu używanego do autoryzacji. Ma "
"pierwszeństwo przed auth_header."

#: admin/src/components/ConditionsEditor.vue
msgid "IF"
msgstr "JEŚLI"

#: admin/src/views/ActivityView.vue
msgid "IP"
msgstr "IP"

#: admin/src/components/ImportDialog.vue admin/src/views/WebhooksList.vue
msgid "Import"
msgstr "Importuj"

#: admin/src/components/ImportDialog.vue
msgid "Import as new copies"
msgstr "Importuj jako nowe kopie"

#: admin/src/components/ImportDialog.vue
msgid "Import complete"
msgstr "Import zakończony"

#: admin/src/components/ImportDialog.vue
msgid "Import failed."
msgstr "Import nie powiódł się."

#: admin/src/components/ImportDialog.vue
msgid "Import webhooks & chains"
msgstr "Importuj webhooki i łańcuchy"

#: admin/src/components/ImportDialog.vue
msgid "Imported %1$d webhook(s) and %2$d chain(s)."
msgstr "Zaimportowano %1$d webhook(ów) i %2$d łańcuch(ów)."

#: admin/src/components/ImportDialog.vue
msgid "Importing…"
msgstr "Importowanie…"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Include User Data"
msgstr "Dołącz dane użytkownika"

#: admin/src/components/MappingEditor.vue
msgid "Include field"
msgstr "Dołącz pole"

#: admin/src/components/ShareBuildDialog.vue
msgid "Include the AI conversation"
msgstr "Dołącz rozmowę z AI"

#: admin/src/components/MappingEditor.vue
msgid "Include unmapped fields"
msgstr "Dołącz niezmapowane pola"

#: admin/src/components/AiProviderSettings.vue
msgid "Included"
msgstr "W pakiecie"

#: src/Api/AuthHelper.php:52
#. translators: %s: required scope name
#, php-format
msgid "Insufficient token scope. This endpoint requires \"%s\" scope or higher."
msgstr ""
"Niewystarczający zakres tokenu. Ten punkt końcowy wymaga zakresu „%s” lub "
"wyższego."

#: admin/src/components/BuildPublishFields.vue
msgid "Integration"
msgstr "Integracja"

#: admin/src/views/ExternalCronView.vue
msgid "Interval"
msgstr "Interwał"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Invalid JSON"
msgstr "Nieprawidłowy JSON"

#: admin/src/components/WebhookForm.vue
msgid "Invalid URL format"
msgstr "Nieprawidłowy format adresu URL"

#: src/Api/CredentialsController.php:261
#: src/Api/CredentialsController.php:322
msgid "Invalid credential type."
msgstr "Nieprawidłowy typ uwierzytelnienia."

#: src/Controllers/DispatcherController.php:125
msgid "Invalid cron token."
msgstr "Nieprawidłowy token crona."

#: src/Api/WebhooksController.php:252
#: src/Api/WebhooksController.php:357
msgid "Invalid endpoint URL."
msgstr "Nieprawidłowy URL punktu końcowego."

#: src/Services/Export/BuildSchemaValidator.php:409
#. translators: 1: JSON path, 2: reason
#, php-format
msgid "Invalid import file — %1$s %2$s"
msgstr "Nieprawidłowy plik importu — %1$s %2$s"

#: src/Api/ApiTokensController.php:146
msgid "Invalid scope. Must be read, operational, full, or agent."
msgstr "Nieprawidłowy zakres. Musi być read, operational, full lub agent."

#: admin/src/components/BuildPublishProgress.vue
msgid "It will appear at this address once it has been reviewed."
msgstr "Pojawi się pod tym adresem po zakończeniu weryfikacji."

#: src/Api/QueueController.php:354
msgid "Job deleted successfully."
msgstr "Zadanie usunięte pomyślnie."

#: src/Api/QueueController.php:291
msgid "Job executed successfully."
msgstr "Zadanie wykonane pomyślnie."

#: src/Api/QueueController.php:301
msgid "Job failed and has been rescheduled for retry."
msgstr "Zadanie nie powiodło się i zostało ponownie zaplanowane do ponowienia."

#: src/Api/QueueController.php:302
msgid "Job failed and has exceeded maximum retry attempts."
msgstr "Zadanie nie powiodło się i przekroczyło maksymalną liczbę prób ponowienia."

#: src/Api/QueueController.php:312
msgid "Job failed with a non-retryable error."
msgstr "Zadanie nie powiodło się z błędem niepodlegającym ponowieniu."

#: src/Api/QueueController.php:250
msgid "Job has already been completed."
msgstr "Zadanie zostało już ukończone."

#: src/Api/QueueController.php:396
msgid "Job has been queued for retry."
msgstr "Zadanie zostało dodane do kolejki w celu ponowienia."

#: src/Api/QueueController.php:260
msgid "Job has invalid payload data."
msgstr "Zadanie ma nieprawidłowe dane."

#: src/Api/QueueController.php:242
msgid "Job is currently being processed."
msgstr "Zadanie jest aktualnie przetwarzane."

#: admin/src/views/QueueView.vue
msgid ""
"Jobs are processed every minute by WP-Cron. Failed jobs are automatically "
"retried with exponential backoff. Use “Process Now” to manually trigger "
"batch processing."
msgstr ""
"Zadania są przetwarzane co minutę przez WP-Cron. Nieudane zadania są "
"automatycznie ponawiane z wykładniczym opóźnieniem. Użyj „Przetwórz teraz”, "
"aby ręcznie uruchomić przetwarzanie wsadowe."

#: admin/src/views/ExternalCronView.vue
msgid "Jobs processed per cron run."
msgstr "Liczba zadań przetwarzanych na jedno uruchomienie crona."

#: admin/src/components/ImportDialog.vue
msgid "Jump to an imported item"
msgstr "Przejdź do zaimportowanego elementu"

#: admin/src/views/SettingsView.vue
msgid "Keep activity log for"
msgstr "Przechowuj dziennik aktywności przez"

#: admin/src/components/ExportDialog.vue
msgid "Keep the real captured values"
msgstr "Zachowaj prawdziwe przechwycone wartości"

#: admin/src/views/SettingsView.vue
msgid "Keep webhook logs for"
msgstr "Przechowuj logi webhooków przez"

#: admin/src/components/KeyValueEditor.vue
msgid "Key"
msgstr "Klucz"

#: admin/src/components/KeyValueEditor.vue
msgid "Key must only contain letters, numbers, hyphens, or underscores"
msgstr "Klucz może zawierać tylko litery, cyfry, myślniki lub podkreślenia"

#: admin/src/views/SettingsView.vue
msgid "Last Cron Run"
msgstr "Ostatnie uruchomienie crona"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Last captured payload for this trigger"
msgstr "Ostatnio przechwycone dane dla tego wyzwalacza"

#: admin/src/components/HealthStatusBar.vue
msgid "Last hour"
msgstr "Ostatnia godzina"

#: admin/src/views/ExternalCronView.vue
msgid "Last ping failed:"
msgstr "Ostatni ping nieudany:"

#: admin/src/views/ExternalCronView.vue
msgid "Last stats pull: %s"
msgstr "Ostatnie pobranie statystyk: %s"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Last successful response (used as preview context)"
msgstr "Ostatnia udana odpowiedź (używana jako kontekst podglądu)"

#: src/Api/WebhookSchema.php:144
msgid "Last update date."
msgstr "Data ostatniej aktualizacji."

#: admin/src/views/ApiTokensView.vue
msgid "Last used"
msgstr "Ostatnio użyto"

#: admin/src/App.vue
msgid "Leave a review on WordPress.org"
msgstr "Zostaw opinię na WordPress.org"

#: admin/src/views/VaultView.vue
msgid "Leave blank to keep current"
msgstr "Pozostaw puste, aby zachować obecne"

#: admin/src/views/SettingsView.vue
msgid "Let API tokens write Code Glue"
msgstr "Pozwól tokenom API zapisywać Code Glue"

#: admin/src/views/SettingsView.vue
msgid "Let connected AI tools build webhooks"
msgstr "Pozwól podłączonym narzędziom AI budować webhooki"

#: admin/src/views/AiBuilderView.vue
msgid "Let’s build something."
msgstr "Zbudujmy coś."

#: admin/src/views/ProView.vue
msgid "License Key"
msgstr "Klucz licencyjny"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Linear"
msgstr "Liniowa"

#: admin/src/components/BuildPublishFields.vue
msgid "LinkedIn"
msgstr "LinkedIn"

#: src/Abilities/GlueAbilities.php:47
msgid "List Code Glue snippets"
msgstr "Wypisz snippety Code Glue"

#: src/Abilities/AbilityCatalog.php:33
msgid ""
"List WordPress do_action hooks discovered on this site (runtime + static "
"scan) that can be used as webhook triggers. The full catalog is LARGE "
"(hundreds of hooks): when hunting for a specific plugin's hooks, always "
"pass search (matches hook name or plugin slug, e.g. {\"search\":\"cf7\"}) "
"instead of listing everything. Results cap at 200 with a total count."
msgstr ""
"Wypisz hooki do_action WordPressa wykryte na tej witrynie (skan w czasie "
"działania + statyczny), których można użyć jako wyzwalaczy webhooków. Pełny "
"katalog jest DUŻY (setki hooków): szukając hooków konkretnej wtyczki, "
"zawsze przekazuj search (dopasowuje nazwę hooka lub slug wtyczki, np. "
"{\"search\":\"cf7\"}) zamiast wypisywać wszystko. Wyniki ograniczone do "
"200, z łączną liczbą."

#: src/Abilities/AbilityCatalog.php:44
msgid "List all configured webhooks with their triggers and status."
msgstr ""
"Wyświetl wszystkie skonfigurowane webhooki wraz z ich wyzwalaczami i "
"statusem."

#: src/Abilities/AbilityCatalog.php:32
msgid "List available triggers"
msgstr "Wyświetl dostępne wyzwalacze"

#: src/Abilities/AbilityCatalog.php:107
msgid "List credentials"
msgstr "Wyświetl uwierzytelnienia"

#: src/Api/WebhookSchema.php:131
msgid "List of trigger actions."
msgstr "Lista akcji wyzwalaczy."

#: src/Abilities/GlueAbilities.php:48
msgid ""
"List saved Code Glue PHP snippets (id, name, tags — use get_snippet for the "
"code). Snippets transform the payload before dispatch (pre) or run side "
"effects after the response (post) once assigned to a webhook+trigger."
msgstr ""
"Wypisz zapisane snippety PHP Code Glue (id, nazwa, tagi — kod pobierz przez "
"get_snippet). Snippety przekształcają payload przed wysyłką (pre) lub "
"uruchamiają efekty uboczne po odpowiedzi (post), gdy zostaną przypisane do "
"pary webhook+wyzwalacz."

#: src/Abilities/AbilityCatalog.php:108
msgid ""
"List vault credentials (names, types and masked hints only — secrets are "
"never returned)."
msgstr ""
"Wyświetl uwierzytelnienia z sejfu (tylko nazwy, typy i zamaskowane "
"podpowiedzi — sekrety nigdy nie są zwracane)."

#: src/Abilities/AbilityCatalog.php:43
msgid "List webhooks"
msgstr "Wyświetl webhooki"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Load"
msgstr "Wczytaj"

#: admin/src/components/ImportDialog.vue
msgid "Load a build JSON exported from Webhook Actions."
msgstr "Wczytaj plik JSON konfiguracji wyeksportowany z Webhook Actions."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Loading last log…"
msgstr "Wczytywanie ostatniego logu…"

#: admin/src/views/QueueView.vue
msgid "Loading queue…"
msgstr "Wczytywanie kolejki…"

#: admin/src/views/SettingsView.vue
msgid "Loading settings..."
msgstr "Wczytywanie ustawień..."

#: admin/src/components/ChainPicker.vue admin/src/views/WebhooksList.vue
msgid "Loading webhooks…"
msgstr "Wczytywanie webhooków…"

#: admin/src/components/LogsTable.vue admin/src/components/TriggerSelect.vue
msgid "Loading..."
msgstr "Wczytywanie..."

#: admin/src/components/PayloadGlueDrawer.vue admin/src/views/ActivityView.vue admin/src/views/AiBuilderView.vue admin/src/views/ApiTokensView.vue admin/src/views/ProView.vue admin/src/views/VaultView.vue admin/src/views/WebhookEdit.vue
msgid "Loading…"
msgstr "Wczytywanie…"

#: admin/src/views/QueueView.vue
msgid "Locked by: %s"
msgstr "Zablokowane przez: %s"

#: admin/src/views/SettingsView.vue
msgid "Log AI Dev Trace"
msgstr "Zapisuj ślad deweloperski AI"

#: admin/src/views/SettingsView.vue
msgid "Log Archive"
msgstr "Archiwum logów"

#: admin/src/components/LogsTable.vue
msgid "Log Details"
msgstr "Szczegóły logu"

#: admin/src/views/SettingsView.vue
msgid "Log Retention"
msgstr "Przechowywanie logów"

#: src/Api/LogsController.php:242
#: src/Api/LogsController.php:260
#: src/Api/LogsController.php:316
#: src/Api/LogsController.php:369
msgid "Log not found."
msgstr "Nie znaleziono wpisu logu."

#: admin/src/App.vue admin/src/views/ActivityView.vue admin/src/views/LogsList.vue
msgid "Logs"
msgstr "Logi"

#: admin/src/views/WebhookLogs.vue
msgid "Logs: %s"
msgstr "Logi: %s"

#: admin/src/App.vue
msgid "Love the plugin?"
msgstr "Podoba Ci się wtyczka?"

#: src/Abilities/AbilityCatalog.php:290
msgid ""
"Make a guarded test HTTP call to validate an endpoint before going live. To "
"probe a webhook you created, pass webhook_id (e.g. {{step_2.id}}) — its "
"URL, credential and method are reused automatically, so never ask the user "
"for the endpoint URL again. Only pass url for an endpoint not tied to a "
"webhook. A probe sends an EMPTY body, so GET, HEAD and POST run without "
"confirmation; only PUT, PATCH and DELETE (which a body-less call can still "
"mutate or delete) require confirmation. Returns status, redacted headers "
"and a truncated, redacted body. The raw secret is never exposed."
msgstr ""
"Wykonaj chronione testowe wywołanie HTTP, aby zweryfikować endpoint przed "
"uruchomieniem. Aby sondować utworzony przez siebie webhook, przekaż "
"webhook_id (np. {{step_2.id}}) — jego URL, uwierzytelnienie i metoda "
"zostaną użyte ponownie automatycznie, więc nigdy nie pytaj użytkownika o "
"adres endpointu ponownie. Przekazuj url tylko dla endpointu niepowiązanego "
"z webhookiem. Sonda wysyła PUSTE body, więc GET, HEAD i POST działają bez "
"potwierdzenia; tylko PUT, PATCH i DELETE (które nawet bez body mogą zmienić "
"lub usunąć dane) wymagają potwierdzenia. Zwraca status, zredagowane "
"nagłówki i skrócone, zredagowane body. Surowy sekret nigdy nie jest "
"ujawniany."

#: admin/src/components/RotateTokenDialog.vue
msgid "Make sure to update all systems that use this token before rotating."
msgstr ""
"Przed rotacją upewnij się, że zaktualizowano wszystkie systemy korzystające "
"z tego tokenu."

#: admin/src/components/ConditionsEditor.vue
msgid "Manual dot-notation for all fields"
msgstr "Ręczna notacja kropkowa dla wszystkich pól"

#: admin/src/components/WebhookForm.vue
msgid "Manual header"
msgstr "Ręczny nagłówek"

#: admin/src/components/LogsTable.vue admin/src/components/TriggerSchemaPanel.vue
msgid "Mapped"
msgstr "Zmapowany"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Mapping & Conditions"
msgstr "Mapowanie i warunki"

#: admin/src/components/LogsTable.vue
msgid "Mapping Applied"
msgstr "Zastosowano mapowanie"

#: admin/src/components/MarkdownField.vue
msgid "Markdown supported."
msgstr "Obsługiwany Markdown."

#: admin/src/components/ConditionsEditor.vue
msgid "Match:"
msgstr "Dopasuj:"

#: admin/src/components/ConditionsEditor.vue
msgid "Matches example payload"
msgstr "Pasuje do przykładowych danych"

#: flowsystems-webhook-actions.php
#. Author of the plugin
msgid "Mateusz Skorupa"
msgstr ""

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Max Attempts"
msgstr "Maks. liczba prób"

#: admin/src/components/WebhookForm.vue
msgid "Max Delay (s)"
msgstr "Maks. opóźnienie (s)"

#: admin/src/views/SettingsView.vue
msgid "Max Delay (seconds)"
msgstr "Maks. opóźnienie (sekundy)"

#: src/Api/WebhookSchema.php:104
msgid ""
"Maximum delivery attempts for this webhook. Null inherits the site-wide "
"setting, then the default of 5."
msgstr ""
"Maksymalna liczba prób dostawy dla tego webhooka. Null dziedziczy "
"ustawienie witryny, a potem domyślne 5."

#: admin/src/views/VaultView.vue
msgid "Maximum protection"
msgstr "Maksymalna ochrona"

#: src/Api/TriggersController.php:146
msgid "Media"
msgstr "Media"

#: admin/src/components/LogsTable.vue
msgid "Method"
msgstr "Metoda"

#: admin/src/views/VaultView.vue
msgid "Migrated %1$s · failed %2$s"
msgstr "Zmigrowano %1$s · nieudane %2$s"

#: src/Abilities/AbilityCatalog.php:243
msgid ""
"Mint a WordPress Application Password for the CURRENT signed-in admin and "
"store it as a \"basic\" vault credential named \"WP REST API (internal) — "
"<user>\", for authenticating this site's own REST API. Use it for INTERNAL "
"automations (endpoint_url on this site's wp-json), then reference the new "
"credential id from assign_credential as {{step_N.id}}. Requires "
"confirmation; the secret is written straight to the vault and never "
"exposed. The optional name only labels the Application Password in the "
"user's profile."
msgstr ""
"Wygeneruj hasło aplikacji WordPress dla AKTUALNIE zalogowanego "
"administratora i zapisz je jako uwierzytelnienie \"basic\" w sejfie pod "
"nazwą \"WP REST API (internal) — <user>\", do uwierzytelniania REST API tej "
"witryny. Używaj go do automatyzacji WEWNĘTRZNYCH (endpoint_url na wp-json "
"tej witryny), a następnie wskaż id nowego uwierzytelnienia w "
"assign_credential jako {{step_N.id}}. Wymaga potwierdzenia; sekret trafia "
"prosto do sejfu i nigdy nie jest ujawniany. Opcjonalna nazwa jedynie "
"opisuje hasło aplikacji w profilu użytkownika."

#: src/Services/WpAppPasswordService.php:102
msgid "Minted the Application Password but failed to store it in the vault."
msgstr "Wygenerowano hasło aplikacji, ale nie udało się zapisać go w sejfie."

#: src/Api/ExportController.php:169
#: src/Api/ExportController.php:183
msgid "Missing import document."
msgstr "Brak dokumentu importu."

#: admin/src/components/AiProviderSettings.vue
msgid "Model"
msgstr "Model"

#: admin/src/components/AiProviderSettings.vue admin/src/views/AiBuilderView.vue
msgid "Monthly credits reset on %s."
msgstr "Miesięczne kredyty odnowią się %s."

#: admin/src/views/ProView.vue
msgid "More sites per licence"
msgstr "Więcej witryn na licencję"

#: admin/src/views/SettingsView.vue
msgid "Move the admin menu item under Tools instead of the top-level sidebar."
msgstr ""
"Przenieś pozycję menu administratora do sekcji Narzędzia zamiast paska "
"bocznego najwyższego poziomu."

#: admin/src/components/WebhookForm.vue
msgid "Move this value into the encrypted Credentials Vault"
msgstr "Przenieś tę wartość do zaszyfrowanego Sejfu uwierzytelnień"

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"Must %1$sreturn $payload;%2$s — the returned array replaces the payload "
"before dispatch."
msgstr ""
"Musisz %1$sreturn $payload;%2$s — zwrócona tablica zastępuje dane przed "
"wysyłką."

#: admin/src/components/WebhookForm.vue
msgid "My Webhook"
msgstr "Mój webhook"

#: admin/src/views/WebhooksList.vue
msgid "My chain"
msgstr "Mój łańcuch"

#: admin/src/components/AiProviderSettings.vue
msgid "My own keys"
msgstr "Moje własne klucze"

#: admin/src/components/LogsTable.vue admin/src/views/SettingsView.vue
msgid "N/A"
msgstr "Nd."

#: admin/src/components/WebhookForm.vue admin/src/views/ApiTokensView.vue admin/src/views/VaultView.vue
msgid "Name"
msgstr "Nazwa"

#: admin/src/components/WebhookForm.vue
msgid "Name is required"
msgstr "Nazwa jest wymagana"

#: admin/src/views/VaultView.vue admin/src/views/WebhooksList.vue
msgid "Name is required."
msgstr "Nazwa jest wymagana."

#: src/Api/WebhookSchema.php:33
msgid "Name of the webhook."
msgstr "Nazwa webhooka."

#: admin/src/views/ProView.vue
msgid "Need help?"
msgstr "Potrzebujesz pomocy?"

#: admin/src/components/AiBuildsBar.vue
msgid "New build"
msgstr "Nowy projekt"

#: admin/src/components/ChainPicker.vue
msgid "New chain name"
msgstr "Nazwa nowego łańcucha"

#: admin/src/components/ChainPicker.vue
msgid "New chain…"
msgstr "Nowy łańcuch…"

#: admin/src/views/VaultView.vue
msgid "New credential"
msgstr "Nowe uwierzytelnienie"

#: admin/src/views/ApiTokensView.vue
msgid "New token"
msgstr "Nowy token"

#: admin/src/views/SettingsView.vue
msgid "Newest"
msgstr "Najnowszy"

#: admin/src/views/ActivityView.vue
msgid "Next"
msgstr "Następna"

#: admin/src/components/LogsTable.vue
msgid "Next attempt scheduled for %s"
msgstr "Następna próba zaplanowana na %s"

#: admin/src/components/LogsTable.vue
msgid "No"
msgstr "Nie"

#: src/Services/Ai/AgentOrchestrator.php:117
msgid "No AI provider is configured yet. Set one up to use the AI Builder."
msgstr ""
"Żaden dostawca AI nie jest jeszcze skonfigurowany. Skonfiguruj go, aby "
"korzystać z Kreatora AI."

#: admin/src/views/AiBuilderView.vue
msgid "No API key needed — %1$s free credits, about %2$s builds."
msgstr "Bez klucza API — %1$s darmowych kredytów, około %2$s buildów."

#: admin/src/views/AiBuilderView.vue
msgid "No API key needed — your first builds are free."
msgstr "Bez klucza API — pierwsze buildy są za darmo."

#: admin/src/components/AiProviderSettings.vue
msgid ""
"No API key needed. Connect your own provider below at any time — it will be "
"used instead of the trial."
msgstr ""
"Bez klucza API. Własnego dostawcę możesz podłączyć poniżej w dowolnym "
"momencie — będzie używany zamiast okresu próbnego."

#: admin/src/views/ApiTokensView.vue
msgid "No API tokens"
msgstr "Brak tokenów API"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "No Payload Captured Yet"
msgstr "Nie przechwycono jeszcze danych"

#: src/Services/RestRouteInspector.php:53
#. translators: %s: route path
#, php-format
msgid ""
"No REST route matches \"%s\" on this site. Route paths are relative to "
"/wp-json, e.g. \"/wp/v2/users\". This only describes THIS site's own REST "
"API — not external endpoints."
msgstr ""
"Żadna trasa REST nie pasuje do \"%s\" na tej witrynie. Ścieżki tras są "
"względne wobec /wp-json, np. \"/wp/v2/users\". To opisuje wyłącznie REST "
"API TEJ witryny — nie zewnętrzne endpointy."

#: admin/src/components/AiProviderSettings.vue
msgid ""
"No WordPress AI connector is currently configured. Add one under Settings → "
"Connectors, or connect a provider key below."
msgstr ""
"Żaden łącznik AI WordPressa nie jest obecnie skonfigurowany. Dodaj go w "
"Ustawienia → Łączniki lub połącz klucz dostawcy poniżej."

#: admin/src/views/ActivityView.vue
msgid "No activity recorded yet."
msgstr "Nie zarejestrowano jeszcze żadnej aktywności."

#: src/Api/SettingsController.php:226
msgid "No archive files found or failed to create ZIP."
msgstr "Nie znaleziono plików archiwum lub nie udało się utworzyć pliku ZIP."

#: admin/src/views/SettingsView.vue
msgid "No archive files yet"
msgstr "Brak plików archiwum"

#: admin/src/components/ImportDialog.vue
msgid "No authorization"
msgstr "Bez uwierzytelnienia"

#: admin/src/components/ImportDialog.vue
msgid "No authorization needed for this build."
msgstr "Ta konfiguracja nie wymaga uwierzytelnienia."

#: admin/src/components/TestWebhookDrawer.vue
msgid "No body sent"
msgstr "Nie wysłano treści"

#: src/Api/WebhooksController.php:584
#: src/Api/WebhooksController.php:601
#: src/Api/WebhooksController.php:620
msgid ""
"No captured payload found for this trigger. Fire the trigger at least once "
"first."
msgstr ""
"Nie znaleziono przechwyconych danych dla tego wyzwalacza. Najpierw uruchom "
"wyzwalacz co najmniej raz."

#: admin/src/components/WebhookForm.vue
msgid "No captured payload — trigger the webhook once to preview the resolved URL."
msgstr ""
"Brak przechwyconych danych — uruchom webhook raz, aby zobaczyć podgląd "
"rozwiązanego adresu URL."

#: admin/src/components/ExportDialog.vue
msgid "No chains match your search."
msgstr "Żaden łańcuch nie pasuje do wyszukiwania."

#: src/Services/Ai/FallbackTransport.php:73
#: src/Services/Ai/WpAiClientTransport.php:101
msgid "No configured AI provider could complete the request."
msgstr "Żaden skonfigurowany dostawca AI nie mógł zrealizować żądania."

#: admin/src/components/AiStepControls.vue
msgid ""
"No credentials in the vault yet — create one and it will be assigned to "
"this webhook."
msgstr ""
"Brak uwierzytelnień w sejfie — utwórz jedno, a zostanie przypisane do tego "
"webhooka."

#: admin/src/components/AiStepControls.vue
msgid ""
"No credentials in the vault yet — create one and it will be used for this "
"step."
msgstr ""
"W sejfie nie ma jeszcze uwierzytelnień — utwórz jedno, a zostanie użyte w "
"tym kroku."

#: src/Api/SchemasController.php:310
#: src/Api/SnippetsController.php:310
msgid "No data to update."
msgstr "Brak danych do aktualizacji."

#: admin/src/components/MappingEditor.vue
msgid "No example payload captured yet."
msgstr "Nie przechwycono jeszcze przykładowych danych."

#: admin/src/components/MappingEditor.vue
msgid "No field mappings configured. Fields will be sent as-is."
msgstr "Nie skonfigurowano mapowań pól. Pola zostaną wysłane bez zmian."

#: admin/src/components/FieldSelector.vue
msgid "No fields found"
msgstr "Nie znaleziono pól"

#: admin/src/components/MappingEditor.vue
msgid "No fields found in payload"
msgstr "Nie znaleziono pól w danych"

#: src/Services/Ai/HostedTrialTransport.php:41
msgid "No free trial is active on this site."
msgstr "Na tej witrynie nie ma aktywnego darmowego okresu próbnego."

#: admin/src/components/ExternalCronChart.vue
msgid "No heartbeat data yet"
msgstr "Brak danych o pulsie"

#: admin/src/components/LogsTable.vue
msgid "No logs found"
msgstr "Nie znaleziono logów"

#: admin/src/components/AiStepControls.vue
msgid "No matches"
msgstr "Brak dopasowań"

#: admin/src/components/ChainPicker.vue
msgid ""
"No other webhooks exist yet — create at least one webhook to use it as a "
"chain source."
msgstr ""
"Nie ma jeszcze innych webhooków — utwórz co najmniej jeden webhook, aby "
"użyć go jako źródła łańcucha."

#: src/Abilities/ReadAbilities.php:152
#. translators: 1: trigger name, 2: comma-separated list of triggers that have captures.
#, php-format
msgid ""
"No payload has ever been captured for \"%1$s\", so there is nothing to map "
"or filter on. Reading other triggers will not help: the ONLY triggers with "
"a capture are: %2$s. Do NOT retry this with a different hook name, and do "
"NOT propose set_mapping or set_conditions with guessed field paths. Either "
"pick a trigger from that list, or stop and tell the user in plain words "
"which event to fire (e.g. \"publish a test post\") so the payload is "
"captured — then read this again."
msgstr ""
"Dla „%1$s” nigdy nie przechwycono payloadu, więc nie ma czego mapować ani "
"filtrować. Czytanie innych wyzwalaczy nie pomoże: JEDYNE wyzwalacze z "
"przechwyconym payloadem to: %2$s. NIE ponawiaj tego z inną nazwą hooka i "
"NIE proponuj set_mapping ani set_conditions ze zgadywanymi ścieżkami pól. "
"Albo wybierz wyzwalacz z tej listy, albo zatrzymaj się i powiedz "
"użytkownikowi zwykłymi słowami, które zdarzenie ma wywołać (np. „opublikuj "
"testowy wpis”), aby payload został przechwycony — a potem przeczytaj to "
"ponownie."

#: src/Abilities/TestAbilities.php:192
msgid "No payload provided and no captured example exists yet for this trigger."
msgstr ""
"Nie podano ładunku i nie istnieje jeszcze przechwycony przykład dla tego "
"wyzwalacza."

#: src/Api/LogsController.php:326
msgid "No queue job found for this log entry."
msgstr "Nie znaleziono zadania kolejki dla tego wpisu logu."

#: admin/src/views/QueueView.vue
msgid "No queued jobs"
msgstr "Brak zadań w kolejce"

#: admin/src/views/VaultView.vue
msgid "No saved credentials"
msgstr "Brak zapisanych uwierzytelnień"

#: admin/src/components/WebhookForm.vue
msgid "No saved credentials yet. Add one in the"
msgstr "Brak zapisanych uwierzytelnień. Dodaj jedno w"

#: src/Services/WpAppPasswordService.php:56
msgid ""
"No signed-in user to provision an Application Password for — open the AI "
"Builder while logged in as an administrator."
msgstr ""
"Brak zalogowanego użytkownika, dla którego można wygenerować hasło "
"aplikacji — otwórz AI Builder będąc zalogowanym jako administrator."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "No snippet assigned"
msgstr "Nie przypisano fragmentu"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "No snippets found"
msgstr "Nie znaleziono fragmentów"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "No successful dispatches found for this webhook — run a test first."
msgstr "Nie znaleziono udanych wysyłek dla tego webhooka — najpierw uruchom test."

#: admin/src/components/WebhookCardContent.vue
msgid "No trigger assigned"
msgstr "Nie przypisano wyzwalacza"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "No triggers configured for this webhook."
msgstr "Nie skonfigurowano wyzwalaczy dla tego webhooka."

#: admin/src/components/TriggerSelect.vue
msgid "No triggers found"
msgstr "Nie znaleziono wyzwalaczy"

#: admin/src/views/WebhooksList.vue
msgid "No webhooks configured yet"
msgstr "Nie skonfigurowano jeszcze żadnych webhooków"

#: admin/src/components/ExportDialog.vue
msgid "No webhooks match your search."
msgstr "Żaden webhook nie pasuje do wyszukiwania."

#: admin/src/components/ChainPicker.vue
msgid "No webhooks match “%s”."
msgstr "Żaden webhook nie pasuje do „%s”."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "No-op"
msgstr "Brak działania"

#: admin/src/views/ExternalCronView.vue
msgid "Not configured"
msgstr "Nie skonfigurowano"

#: src/Abilities/AbilityErrors.php:17
msgid "Not found."
msgstr "Nie znaleziono."

#: admin/src/components/LogsTable.vue
msgid ""
"Not sent as request body for GET / DELETE. Without URL parameters "
"configured, the full payload is appended as %1$s?payload=&lt;json&gt;%2$s."
msgstr ""
"Nie wysyłane jako treść żądania dla GET / DELETE. Bez skonfigurowanych "
"parametrów URL pełne dane są dołączane jako %1$s?payload=&lt;json&gt;%2$s."

#: admin/src/components/MarkdownField.vue
msgid "Nothing to preview yet — switch to Write to add a description."
msgstr "Nie ma jeszcze czego podejrzeć — przejdź do zakładki Pisz, aby dodać opis."

#: admin/src/components/AiProviderSettings.vue
msgid ""
"Nothing to set up: your first builds are free and start the moment you send "
"a prompt. Connect your own provider here whenever you want — it will be "
"used instead of the trial."
msgstr ""
"Nic do skonfigurowania: pierwsze buildy są za darmo i zaczynają się w "
"chwili wysłania promptu. Własnego dostawcę podłączysz tutaj, kiedy zechcesz "
"— będzie używany zamiast okresu próbnego."

#: admin/src/views/LogsList.vue
msgid "Nothing was queued"
msgstr "Nic nie zakolejkowano"

#: src/Api/LogsController.php:127
msgid "Number of days to look back."
msgstr "Liczba dni wstecz."

#: src/Api/LogsController.php:535
msgid "Number of results per page."
msgstr "Liczba wyników na stronę."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "OK"
msgstr "OK"

#: admin/src/components/ConditionsEditor.vue
msgid "OR"
msgstr "OR"

#: admin/src/views/ActivityView.vue
msgid "Object"
msgstr "Obiekt"

#: admin/src/views/SettingsView.vue
msgid "Oldest"
msgstr "Najstarszy"

#: admin/src/views/SettingsView.vue
msgid "Oldest Log"
msgstr "Najstarszy log"

#: admin/src/components/ChainPicker.vue
msgid ""
"On a successful (2xx) response from any of these webhooks, this webhook "
"fires with the upstream response, sent payload, and original pre-mapping "
"payload available as %1$sargs[0]%2$s."
msgstr ""
"Po udanej odpowiedzi (2xx) z któregokolwiek z tych webhooków ten webhook "
"uruchamia się z odpowiedzią nadrzędną, wysłanymi danymi i oryginalnymi "
"danymi sprzed mapowania dostępnymi jako %1$sargs[0]%2$s."

#: admin/src/components/BuildPublishFields.vue
msgid ""
"One or two sentences — this is what people read on the listing before they "
"open the build."
msgstr "Jedno lub dwa zdania — to widzą inni na liście, zanim otworzą konfigurację."

#: src/Api/LogsController.php:334
msgid "Only failed log entries can be retried."
msgstr "Tylko nieudane wpisy logu mogą być ponawiane."

#: src/Api/QueueController.php:377
msgid "Only pending or permanently failed jobs can be retried."
msgstr "Tylko oczekujące lub trwale nieudane zadania mogą być ponawiane."

#: src/Api/WebhooksController.php:724
msgid "Only return enabled webhooks."
msgstr "Zwróć tylko włączone webhooki."

#: src/Api/LogsController.php:377
msgid "Only successful or skipped log entries can be replayed."
msgstr "Tylko udane lub pominięte wpisy logu mogą być odtwarzane."

#: admin/src/App.vue
msgid "Open Settings"
msgstr "Otwórz ustawienia"

#: admin/src/components/BuiltWebhookActions.vue
msgid "Open webhook"
msgstr "Otwórz webhook"

#: admin/src/components/CreateTokenDialog.vue
msgid "Operational"
msgstr "Operacyjny"

#: admin/src/views/ApiTokensView.vue
msgid "Operational + create/update/delete webhooks, schemas, and queue jobs"
msgstr ""
"Operacyjny + tworzenie/aktualizacja/usuwanie webhooków, schematów i zadań "
"kolejki"

#: admin/src/components/CreateTokenDialog.vue
msgid "Operational + create/update/delete webhooks, schemas, queue jobs"
msgstr ""
"Operacyjny + tworzenie/aktualizacja/usuwanie webhooków, schematów, zadań "
"kolejki"

#: src/Api/WebhookSchema.php:39
msgid "Optional markdown description documenting what this webhook does."
msgstr "Opcjonalny opis w Markdownie dokumentujący, co robi ten webhook."

#: admin/src/views/VaultView.vue
msgid "Optional: harden with %1$sFSWA_SECRET_KEY%2$s"
msgstr "Opcjonalnie: wzmocnij za pomocą %1$sFSWA_SECRET_KEY%2$s"

#: src/Api/TriggersController.php:148
msgid "Options"
msgstr "Opcje"

#: admin/src/components/TriggerSelect.vue
msgid "Or select from available hooks..."
msgstr "Lub wybierz z dostępnych hooków..."

#: admin/src/components/AiProviderSettings.vue
msgid "Or use Pro AI credits"
msgstr "Albo użyj kredytów AI Pro"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Original"
msgstr "Oryginalny"

#: admin/src/components/LogsTable.vue admin/src/components/MappingEditor.vue
msgid "Original Payload"
msgstr "Oryginalne dane"

#: src/Api/TriggersController.php:150
msgid "Other"
msgstr "Inne"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Output (stdout)"
msgstr "Wyjście (stdout)"

#: admin/src/components/WebhookForm.vue
msgid ""
"Override the global retry limit for this webhook. Leave empty to use the "
"global setting."
msgstr ""
"Zastąp globalny limit ponowień dla tego webhooka. Pozostaw puste, aby użyć "
"ustawienia globalnego."

#: admin/src/components/WebhookForm.vue
msgid ""
"Override the retry delay strategy for this webhook. Leave empty to use the "
"global setting."
msgstr ""
"Zastąp strategię opóźnienia ponowień dla tego webhooka. Pozostaw puste, aby "
"użyć ustawienia globalnego."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "PHP Code"
msgstr "Kod PHP"

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"PHP runs after successful dispatch; %1$s$responseBody%2$s and "
"%1$s$originalPayload%2$s available"
msgstr ""
"PHP uruchamia się po udanej wysyłce; dostępne %1$s$responseBody%2$s i "
"%1$s$originalPayload%2$s"

#: admin/src/views/SettingsView.vue
msgid ""
"Page reload is disabled on WordPress Playground — the menu will update on "
"next WP menu item click."
msgstr ""
"Przeładowanie strony jest wyłączone w WordPress Playground — menu "
"zaktualizuje się przy następnym kliknięciu pozycji menu WP."

#: src/Api/TriggersController.php:143
msgid "Pages"
msgstr "Strony"

#: admin/src/components/WebhookForm.vue
msgid "Param name"
msgstr "Nazwa parametru"

#: src/Api/LogsController.php:289
msgid "Parameter older_than_days is required."
msgstr "Parametr older_than_days jest wymagany."

#: admin/src/components/WebhookForm.vue
msgid "Part of chain:"
msgid_plural "Part of chains:"
msgstr[0] "Część łańcucha:"
msgstr[1] "Część łańcuchów:"
msgstr[2] "Część łańcuchów:"

#: admin/src/components/AiStepControls.vue admin/src/components/ImportDialog.vue admin/src/views/VaultView.vue
msgid "Password"
msgstr "Hasło"

#: admin/src/components/AiStepControls.vue
msgid "Password (or Application Password)"
msgstr "Hasło (lub hasło aplikacji)"

#: admin/src/views/VaultView.vue
msgid "Password or application password"
msgstr "Hasło lub hasło aplikacji"

#: admin/src/views/VaultView.vue
msgid "Paste the token / key"
msgstr "Wklej token / klucz"

#: admin/src/components/KeyValueEditor.vue
msgid "Path not found in captured payload — this value will be sent as static text"
msgstr ""
"Ścieżki nie znaleziono w przechwyconym payloadzie — ta wartość zostanie "
"wysłana jako zwykły tekst"

#: admin/src/components/FieldSelector.vue admin/src/components/MappingEditor.vue
msgid "Path not found in payload"
msgstr "Nie znaleziono ścieżki w danych"

#: admin/src/views/ExternalCronView.vue
msgid "Pause"
msgstr "Wstrzymaj"

#: admin/src/views/ExternalCronView.vue
msgid "Paused"
msgstr "Wstrzymane"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Payload"
msgstr "Ładunek"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Payload Example Captured"
msgstr "Przechwycono przykładowe dane"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Payload Mapping"
msgstr "Mapowanie danych"

#: admin/src/views/ProView.vue
msgid "Payload mapping"
msgstr "Mapowanie danych"

#: admin/src/components/HealthStatusBar.vue admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "Pending"
msgstr "Oczekujące"

#: admin/src/views/ProView.vue
msgid "Per-webhook retry limit and backoff strategy"
msgstr "Limit ponowień i strategia backoff per webhook"

#: admin/src/views/QueueView.vue
msgid "Perm. Failed"
msgstr "Trwale nieud."

#: admin/src/views/LogsList.vue
msgid "Permanently Failed"
msgstr "Trwale nieudane"

#: src/Abilities/GlueAbilities.php:151
msgid ""
"Permanently delete a Code Glue snippet. Requires confirmation. Webhooks "
"referencing it fall back to no snippet."
msgstr ""
"Trwale usuń snippet Code Glue. Wymaga potwierdzenia. Webhooki, które się do "
"niego odwołują, przechodzą na brak snippetu."

#: src/Abilities/AbilityCatalog.php:347
msgid ""
"Permanently delete a webhook and its triggers / mapping. Requires "
"confirmation."
msgstr "Trwale usuń webhook oraz jego wyzwalacze / mapowanie. Wymaga potwierdzenia."

#: admin/src/components/ui/DateTimePicker.vue
msgid "Pick date & time"
msgstr "Wybierz datę i godzinę"

#: admin/src/components/BuildPublishFields.vue
msgid "Pick the one that fits best — a build is listed in a single collection."
msgstr "Wybierz najlepiej pasującą — konfiguracja trafia tylko do jednej kolekcji."

#: admin/src/views/SettingsView.vue
msgid "Plugin Info"
msgstr "Informacje o wtyczce"

#: admin/src/views/SettingsView.vue
msgid "Plugin Version"
msgstr "Wersja wtyczki"

#: admin/src/views/SettingsView.vue
msgid "Plugin default"
msgstr "Domyślne wtyczki"

#: admin/src/views/ExternalCronView.vue
msgid "Plugin queue endpoint"
msgstr "Punkt końcowy kolejki wtyczki"

#: src/Api/TriggersController.php:147
msgid "Plugins"
msgstr "Wtyczki"

#: admin/src/components/TestWebhookDrawer.vue admin/src/components/TriggerSchemaPanel.vue
msgid "Post Glue"
msgstr "Glue po wysyłce"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Post-dispatch"
msgstr "Po wysyłce"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Post-dispatch Code Glue"
msgstr "Code Glue po wysyłce"

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"Post-dispatch Code Glue preview ran but is not saved. Save or discard "
"before continuing."
msgstr ""
"Podgląd Code Glue po wysyłce został uruchomiony, ale nie został zapisany. "
"Zapisz lub odrzuć przed kontynuowaniem."

#: src/Api/TriggersController.php:142
msgid "Posts"
msgstr "Wpisy"

#: admin/src/components/TestWebhookDrawer.vue admin/src/components/TriggerSchemaPanel.vue
msgid "Pre Glue"
msgstr "Glue przed wysyłką"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Pre-dispatch"
msgstr "Przed wysyłką"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Pre-dispatch Code Glue"
msgstr "Code Glue przed wysyłką"

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"Pre-dispatch Code Glue preview is active. Save or discard it before saving "
"Mapping & Conditions."
msgstr ""
"Podgląd Code Glue przed wysyłką jest aktywny. Zapisz go lub odrzuć przed "
"zapisaniem mapowania i warunków."

#: admin/src/components/MarkdownField.vue
msgid "Preview"
msgstr "Podgląd"

#: src/Abilities/GlueAbilities.php:107
msgid "Preview (test-run) a Code Glue snippet"
msgstr "Podgląd (uruchomienie testowe) snippetu Code Glue"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Preview active"
msgstr "Podgląd aktywny"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Preview failed"
msgstr "Podgląd nie powiódł się"

#: admin/src/views/ActivityView.vue
msgid "Previous"
msgstr "Poprzednia"

#: admin/src/views/ProView.vue
msgid "Priority support"
msgstr "Priorytetowe wsparcie"

#: admin/src/App.vue admin/src/views/ProView.vue
msgid "Pro"
msgstr "Pro"

#: admin/src/views/ProView.vue
msgid "Pro License"
msgstr "Licencja Pro"

#: admin/src/views/ProView.vue
msgid "Pro Plugin Installed"
msgstr "Wtyczka Pro zainstalowana"

#: src/Api/ProStatusController.php:48
msgid "Pro plugin not found."
msgstr "Nie znaleziono wtyczki Pro."

#: src/Abilities/AbilityCatalog.php:289
msgid "Probe a target endpoint"
msgstr "Sonduj docelowy punkt końcowy"

#: admin/src/views/QueueView.vue
msgid "Process Now"
msgstr "Przetwórz teraz"

#: src/Controllers/DispatcherController.php:146
#. translators: %1$d: total jobs processed, %2$d: succeeded count, %3$d: failed count, %4$d: rescheduled count
#, php-format
msgid "Processed %1$d jobs: %2$d succeeded, %3$d failed, %4$d rescheduled."
msgstr ""
"Przetworzono %1$d zadań: %2$d powiodło się, %3$d nie powiodło się, %4$d "
"przełożono."

#: admin/src/views/QueueView.vue
msgid "Processing"
msgstr "Przetwarzanie"

#: admin/src/views/LogsList.vue
msgid "Processing…"
msgstr "Przetwarzanie…"

#: src/Abilities/GlueAbilities.php:272
msgid "Provide code or a snippet_id to preview."
msgstr "Podaj kod lub snippet_id, aby zobaczyć podgląd."

#: admin/src/components/AiProviderSettings.vue
msgid "Provider"
msgstr "Dostawca"

#: admin/src/views/ProView.vue
msgid "Publish a build and earn AI credits"
msgstr "Opublikuj build i zdobądź kredyty AI"

#: admin/src/components/ShareBuildDialog.vue
msgid "Publish build"
msgstr "Opublikuj konfigurację"

#: admin/src/components/BuiltWebhookActions.vue
msgid "Publish it on wpwebhooks.org — 50 AI credits, +20 for every like."
msgstr "Opublikuj ją na wpwebhooks.org — 50 kredytów AI, +20 za każde polubienie."

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Publish this build on wpwebhooks.org so anyone can import it. Secrets are "
"never included, and you keep 50 AI credits for publishing plus 20 every "
"time someone likes it."
msgstr ""
"Opublikuj tę konfigurację na wpwebhooks.org, aby każdy mógł ją "
"zaimportować. Sekrety nigdy nie są dołączane, a Ty otrzymujesz 50 kredytów "
"AI za publikację i 20 za każde polubienie."

#: admin/src/components/BuiltWebhookActions.vue admin/src/components/ShareBuildDialog.vue
msgid "Publish your build"
msgstr "Opublikuj swoją konfigurację"

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Published builds are checked automatically before they go live, and can be "
"taken down later from your account."
msgstr ""
"Opublikowane konfiguracje są automatycznie sprawdzane przed udostępnieniem "
"i mogą zostać później wycofane z poziomu Twojego konta."

#: admin/src/components/BuildPublishProgress.vue
msgid "Published — your build is live."
msgstr "Opublikowano — Twoja konfiguracja jest już dostępna."

#: src/Services/Builds/PublishBuildClient.php:41
msgid ""
"Publishing a build needs a licence this site is known by. Run a build with "
"AI once to claim the free trial licence, or enter a Pro key."
msgstr ""
"Publikowanie builda wymaga licencji, pod którą ta witryna jest znana. "
"Uruchom raz build z AI, aby odebrać darmową licencję próbną, albo wpisz "
"klucz Pro."

#: admin/src/components/ShareBuildDialog.vue
msgid "Publishing failed."
msgstr "Publikacja nie powiodła się."

#: admin/src/components/ShareBuildDialog.vue
msgid "Publishing…"
msgstr "Publikowanie…"

#: admin/src/components/LogsTable.vue
msgid "Query Parameters"
msgstr "Parametry zapytania"

#: src/Api/WebhookSchema.php:80
msgid "Query parameters appended to the URL."
msgstr "Parametry zapytania dołączone do adresu URL."

#: admin/src/App.vue admin/src/views/ActivityView.vue admin/src/views/QueueView.vue
msgid "Queue"
msgstr "Kolejka"

#: admin/src/views/SettingsView.vue
msgid "Queue Processor (Cron)"
msgstr "Procesor kolejki (Cron)"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Queue Test"
msgstr "Dodaj test do kolejki"

#: admin/src/components/HealthStatusBar.vue
msgid ""
"Queue appears stuck — there are pending deliveries older than 10 minutes. "
"Check your cron setup."
msgstr ""
"Kolejka wygląda na zablokowaną — są oczekujące dostarczenia starsze niż 10 "
"minut. Sprawdź konfigurację crona."

#: admin/src/views/ExternalCronView.vue
msgid "Queue batch size"
msgstr "Rozmiar partii kolejki"

#: src/Api/QueueController.php:234
#: src/Api/QueueController.php:327
#: src/Api/QueueController.php:369
msgid "Queue job not found."
msgstr "Nie znaleziono zadania kolejki."

#: admin/src/components/HealthStatusBar.vue
msgid ""
"Queue processor has never run. Ensure WP-Cron is active or configure an "
"external cron job for reliable delivery."
msgstr ""
"Procesor kolejki nigdy nie został uruchomiony. Upewnij się, że WP-Cron jest "
"aktywny lub skonfiguruj zewnętrzne zadanie cron dla niezawodnego "
"dostarczania."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Queuing…"
msgstr "Dodawanie do kolejki…"

#: admin/src/views/VaultView.vue
msgid "Raw value for any header — escape hatch"
msgstr "Surowa wartość dla dowolnego nagłówka — opcja awaryjna"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Re-capture"
msgstr "Przechwyć ponownie"

#: admin/src/views/VaultView.vue
msgid "Re-encrypt & remove database key"
msgstr "Zaszyfruj ponownie i usuń klucz z bazy danych"

#: admin/src/views/VaultView.vue
msgid "Re-encrypting…"
msgstr "Ponowne szyfrowanie…"

#: admin/src/components/CreateTokenDialog.vue
msgid "Read"
msgstr "Odczyt"

#: admin/src/components/CreateTokenDialog.vue
msgid "Read + toggle webhooks, retry/replay logs, execute queue jobs"
msgstr ""
"Odczyt + przełączanie webhooków, ponawianie/odtwarzanie logów, wykonywanie "
"zadań kolejki"

#: admin/src/views/ApiTokensView.vue
msgid "Read + toggle webhooks, retry/replay logs, execute/retry queue jobs"
msgstr ""
"Odczyt + przełączanie webhooków, ponawianie/odtwarzanie logów, "
"wykonywanie/ponawianie zadań kolejki"

#: src/Abilities/AbilityCatalog.php:94
msgid ""
"Read recent delivery logs (optionally for one webhook) to verify what was "
"sent and how the endpoint responded."
msgstr ""
"Odczytaj ostatnie logi dostarczania (opcjonalnie dla jednego webhooka), aby "
"zweryfikować, co zostało wysłane i jak odpowiedział punkt końcowy."

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Read that build first. If yours does something it does not — another "
"destination, an extra step, different conditions — make that difference "
"part of the build and publish again."
msgstr ""
"Najpierw przeczytaj tamten build. Jeśli Twój robi coś, czego tamten nie "
"robi — inne miejsce docelowe, dodatkowy krok, inne warunki — uwzględnij tę "
"różnicę w buildzie i opublikuj ponownie."

#: admin/src/components/ShareBuildDialog.vue
msgid "Reading this build…"
msgstr "Odczytywanie konfiguracji…"

#: src/Services/Ai/HostedTrialTransport.php:133
msgid "Reading this service's API reference…"
msgstr "Czytam dokumentację API tej usługi…"

#: admin/src/components/ImportDialog.vue
msgid "Reading…"
msgstr "Odczytywanie…"

#: admin/src/components/HealthStatusBar.vue
msgid "Ready to send some data?"
msgstr "Gotowy, aby wysłać dane?"

#: admin/src/views/SettingsView.vue
msgid ""
"Records the exact prompts and raw responses exchanged with the AI model to "
"a protected log file, so support can diagnose a build you report. On by "
"default; API keys are always redacted and entries older than 30 days are "
"pruned automatically. Turn this off if you would rather not keep the log."
msgstr ""
"Zapisuje dokładne polecenia i surowe odpowiedzi wymieniane z modelem AI do "
"chronionego pliku dziennika, aby wsparcie mogło zdiagnozować zgłoszoną "
"konfigurację. Domyślnie włączone; klucze API są zawsze usuwane, a wpisy "
"starsze niż 30 dni są automatycznie czyszczone. Wyłącz, jeśli wolisz nie "
"przechowywać dziennika."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Redirect"
msgstr "Przekierowanie"

#: src/Abilities/AbilityCatalog.php:228
msgid ""
"Reference a stored vault credential from a webhook by id (the secret is "
"injected at dispatch time and never exposed)."
msgstr ""
"Odwołaj się z webhooka do zapisanego w sejfie uwierzytelnienia po id "
"(sekret jest wstrzykiwany w momencie wysyłki i nigdy nie jest ujawniany)."

#: admin/src/views/QueueView.vue
msgid "Refresh"
msgstr "Odśwież"

#: admin/src/views/SettingsView.vue
msgid "Regenerate Token"
msgstr "Wygeneruj token ponownie"

#: admin/src/views/SettingsView.vue
msgid ""
"Regenerating the token will invalidate the current cron URL. You'll need to "
"update your crontab."
msgstr ""
"Ponowne wygenerowanie tokenu unieważni bieżący adres URL crona. Będziesz "
"musiał zaktualizować crontab."

#: admin/src/views/ProView.vue
msgid "Reliable webhooks with queue & retries"
msgstr "Niezawodne webhooki z kolejką i ponowieniami"

#: admin/src/components/AiProviderSettings.vue
msgid "Remove"
msgstr "Usuń"

#: admin/src/views/ActivityView.vue
msgid "Remove activity entries older than the specified number of days."
msgstr "Usuń wpisy aktywności starsze niż podana liczba dni."

#: admin/src/views/QueueView.vue
msgid "Remove from queue"
msgstr "Usuń z kolejki"

#: admin/src/components/AiProviderSettings.vue
msgid "Remove this provider and delete its stored key?"
msgstr "Usunąć tego dostawcę i skasować jego zapisany klucz?"

#: admin/src/views/WebhooksList.vue
msgid "Rename chain"
msgstr "Zmień nazwę łańcucha"

#: admin/src/views/ProView.vue
msgid "Renews / expires"
msgstr "Odnawia się / wygasa"

#: admin/src/components/ShareBuildDialog.vue
msgid ""
"Replaces your site URL with example.com everywhere it appears — the export "
"header, endpoint URLs, Code Glue and the AI conversation. Whoever imports "
"the build re-points those endpoints at their own site."
msgstr ""
"Zastępuje adres Twojej witryny adresem example.com wszędzie, gdzie "
"występuje — w nagłówku eksportu, adresach endpointów, Code Glue i rozmowie "
"z AI. Osoba importująca przekieruje te endpointy na własną witrynę."

#: admin/src/components/LogsTable.vue
msgid "Replay"
msgstr "Odtwórz"

#: admin/src/views/LogsList.vue
msgid "Replay %d selected"
msgstr "Odtwórz %d zaznaczonych"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Request"
msgstr "Żądanie"

#: admin/src/components/LogsTable.vue
msgid "Request Headers"
msgstr "Nagłówki żądania"

#: admin/src/components/LogsTable.vue
msgid "Request Payload"
msgstr "Ładunek żądania"

#: admin/src/views/QueueView.vue
msgid "Reset and retry"
msgstr "Zresetuj i ponów"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Response"
msgstr "Odpowiedź"

#: admin/src/components/ExternalCronChart.vue
msgid "Response (ms)"
msgstr "Odpowiedź (ms)"

#: admin/src/components/LogsTable.vue
msgid "Response Body"
msgstr "Treść odpowiedzi"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Result Preview"
msgstr "Podgląd wyniku"

#: admin/src/views/ExternalCronView.vue
msgid "Resume"
msgstr "Wznów"

#: admin/src/views/LogsList.vue admin/src/views/WebhookLogs.vue
msgid "Retries"
msgstr "Ponowienia"

#: admin/src/components/AiStepControls.vue admin/src/components/LogsTable.vue admin/src/views/AiBuilderView.vue admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "Retry"
msgstr "Ponów"

#: admin/src/views/LogsList.vue
msgid "Retry %d selected"
msgstr "Ponów %d zaznaczonych"

#: admin/src/views/LogsList.vue
msgid "Retry / Replay %d selected"
msgstr "Ponów / odtwórz %d zaznaczonych"

#: admin/src/views/SettingsView.vue
msgid "Retry Settings"
msgstr "Ustawienia ponawiania"

#: admin/src/components/AiStepControls.vue
msgid "Retry probe"
msgstr "Ponów sondowanie"

#: admin/src/views/LogsList.vue
msgid "Retry queued"
msgstr "Ponowienie zakolejkowane"

#: admin/src/views/SettingsView.vue
msgid "Retry settings saved"
msgstr "Ustawienia ponawiania zapisane"

#: src/Abilities/AbilityCatalog.php:64
msgid ""
"Return the last captured example payload, field mapping and conditions for "
"a trigger so the agent can map against the real payload shape. Pass "
"webhook_id to read that webhook's own capture; omit it to get the latest "
"example for the trigger from any webhook. If the result carries a "
"capture_warning, the capture is stale/opaque (no mappable fields): follow "
"the warning — show the user what the capture contains and ask them to "
"re-fire the event — instead of proposing mappings."
msgstr ""
"Zwróć ostatni przechwycony przykładowy ładunek, mapowanie pól i warunki dla "
"wyzwalacza, aby agent mógł mapować na podstawie rzeczywistego kształtu "
"ładunku. Przekaż webhook_id, aby odczytać przechwycenie tego webhooka; "
"pomiń go, aby pobrać najnowszy przykład dla wyzwalacza z dowolnego "
"webhooka. Jeśli wynik zawiera capture_warning, przechwycenie jest "
"nieaktualne/nieczytelne (brak pól do mapowania): postępuj zgodnie z "
"ostrzeżeniem — pokaż użytkownikowi zawartość przechwycenia i poproś o "
"ponowne wywołanie zdarzenia — zamiast proponować mapowania."

#: admin/src/components/PayloadGlueDrawer.vue
msgid ""
"Return value is ignored — use for side effects: %1$supdate_post_meta()%2$s, "
"%1$swp_mail()%2$s, %1$serror_log()%2$s, follow-up API calls, etc."
msgstr ""
"Zwracana wartość jest ignorowana — używaj do efektów ubocznych: "
"%1$supdate_post_meta()%2$s, %1$swp_mail()%2$s, %1$serror_log()%2$s, "
"kolejnych wywołań API itp."

#: src/Api/SchemasController.php:98
msgid ""
"Reuse an example payload captured for the same trigger on another webhook "
"when this one has none."
msgstr ""
"Użyj ponownie przykładowego ładunku przechwyconego dla tego samego "
"wyzwalacza na innym webhooku, gdy ten nie ma własnego."

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Reuse example from other webhooks"
msgstr "Użyj ponownie przykładu z innych webhooków"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Reusing an example captured for this trigger on another webhook"
msgstr ""
"Ponowne użycie przykładu przechwyconego dla tego wyzwalacza na innym "
"webhooku"

#: admin/src/components/AiStepPanel.vue
msgid "Reverted"
msgstr "Cofnięto"

#: admin/src/components/AiStepPanel.vue
msgid "Review is on — nothing runs until you start it."
msgstr "Przegląd jest włączony — nic się nie uruchomi, dopóki tego nie rozpoczniesz."

#: admin/src/views/AiBuilderView.vue
msgid "Review plan before running"
msgstr "Przejrzyj plan przed uruchomieniem"

#: admin/src/components/RotateTokenDialog.vue
msgid "Revive token"
msgstr "Przywróć token"

#: admin/src/components/RotateTokenDialog.vue
msgid "Revive token: %s"
msgstr "Przywróć token: %s"

#: admin/src/components/RotateTokenDialog.vue
msgid "Reviving…"
msgstr "Przywracanie…"

#: admin/src/components/RotateTokenDialog.vue admin/src/views/ApiTokensView.vue
msgid "Rotate token"
msgstr "Rotuj token"

#: admin/src/components/RotateTokenDialog.vue
msgid "Rotate token: %s"
msgstr "Rotuj token: %s"

#: admin/src/components/RotateTokenDialog.vue
msgid "Rotating…"
msgstr "Rotacja…"

#: admin/src/views/LogsList.vue
msgid "Run %d now"
msgstr "Uruchom %d teraz"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Run Preview"
msgstr "Uruchom podgląd"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Run Test Now"
msgstr "Uruchom test teraz"

#: admin/src/views/LogsList.vue
msgid "Run now"
msgstr "Uruchom teraz"

#: admin/src/components/AiStepPanel.vue
msgid "Run plan"
msgstr "Uruchom plan"

#: admin/src/components/PayloadGlueDrawer.vue admin/src/views/LogsList.vue
msgid "Running…"
msgstr "Uruchamianie…"

#: admin/src/components/BuildPublishFields.vue
msgid "Runs a process end to end — a chain of steps, a scheduled job, a workflow."
msgstr ""
"Prowadzi proces od początku do końca — łańcuch kroków, zadanie cykliczne, "
"przepływ pracy."

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"Runs after the mapping above, on the mapped payload — %1$s$args%2$s is "
"empty unless %1$sargs%2$s was mapped through."
msgstr ""
"Działa po powyższym mapowaniu, na zmapowanym payloadzie — %1$s$args%2$s "
"jest puste, chyba że %1$sargs%2$s przeszło przez mapowanie."

#: admin/src/components/AiProviderSettings.vue
msgid "Runs through the WP Webhooks AI service — no API keys needed."
msgstr "Działa przez usługę WP Webhooks AI — bez kluczy API."

#: admin/src/views/SettingsView.vue
msgid "Same delay every retry: base seconds"
msgstr "Takie samo opóźnienie przy każdym ponowieniu: baza sekund"

#: admin/src/components/ExternalCronChart.vue
msgid "Samples"
msgstr "Próbki"

#: admin/src/components/AiProviderSettings.vue admin/src/components/ChangeExpiryDialog.vue admin/src/components/TriggerSchemaPanel.vue admin/src/views/ExternalCronView.vue admin/src/views/WebhooksList.vue
msgid "Save"
msgstr "Zapisz"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Save & Assign"
msgstr "Zapisz i przypisz"

#: admin/src/components/WebhookForm.vue
msgid "Save & continue to chain setup"
msgstr "Zapisz i przejdź do konfiguracji łańcucha"

#: admin/src/components/WebhookForm.vue
msgid "Save & use credential"
msgstr "Zapisz i użyj uwierzytelnienia"

#: admin/src/components/WebhookForm.vue
msgid "Save Changes"
msgstr "Zapisz zmiany"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Save Glue"
msgstr "Zapisz Glue"

#: admin/src/views/SettingsView.vue
msgid "Save Retry Settings"
msgstr "Zapisz ustawienia ponawiania"

#: admin/src/views/SettingsView.vue
msgid "Save Settings"
msgstr "Zapisz ustawienia"

#: admin/src/views/VaultView.vue
msgid "Save changes"
msgstr "Zapisz zmiany"

#: admin/src/components/WebhookForm.vue
msgid "Save credential to vault"
msgstr "Zapisz uwierzytelnienie w sejfie"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Save failed"
msgstr "Zapis nie powiódł się"

#: admin/src/components/WebhookForm.vue
msgid "Save to vault"
msgstr "Zapisz w sejfie"

#: admin/src/components/WebhookForm.vue
msgid "Save webhook first"
msgstr "Najpierw zapisz webhook"

#: admin/src/components/WebhookForm.vue
msgid "Saved credential"
msgstr "Zapisane uwierzytelnienie"

#: admin/src/components/ChangeExpiryDialog.vue admin/src/components/PayloadGlueDrawer.vue admin/src/components/WebhookForm.vue admin/src/views/ExternalCronView.vue admin/src/views/VaultView.vue admin/src/views/WebhooksList.vue
msgid "Saving…"
msgstr "Zapisywanie…"

#: admin/src/views/SettingsView.vue
msgid "Scheduler"
msgstr "Harmonogram"

#: admin/src/views/ActivityView.vue
msgid "Schemas"
msgstr "Schematy"

#: admin/src/components/CreateTokenDialog.vue admin/src/views/ApiTokensView.vue
msgid "Scope"
msgstr "Zakres"

#: admin/src/views/ApiTokensView.vue
msgid "Scope reference"
msgstr "Opis zakresów"

#: admin/src/components/ExportDialog.vue
msgid "Search chains…"
msgstr "Szukaj łańcuchów…"

#: admin/src/components/AiStepControls.vue
msgid "Search credentials…"
msgstr "Szukaj uwierzytelnień…"

#: admin/src/components/FieldSelector.vue
msgid "Search fields…"
msgstr "Szukaj pól…"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Search snippets…"
msgstr "Szukaj fragmentów…"

#: admin/src/components/TriggerSelect.vue
msgid "Search triggers..."
msgstr "Szukaj wyzwalaczy..."

#: admin/src/components/ChainPicker.vue
msgid "Search webhooks by name or URL…"
msgstr "Szukaj webhooków po nazwie lub adresie URL…"

#: admin/src/components/ExportDialog.vue
msgid "Search webhooks…"
msgstr "Szukaj webhooków…"

#: admin/src/components/ImportDialog.vue
msgid "Secret / token"
msgstr "Sekret / token"

#: admin/src/components/AiStepControls.vue admin/src/views/VaultView.vue
msgid "Secret value"
msgstr "Wartość sekretu"

#: admin/src/views/VaultView.vue
msgid ""
"Secrets are encrypted at rest (AES-256-GCM) and never returned by the API — "
"only a masked hint is shown."
msgstr ""
"Sekrety są szyfrowane w spoczynku (AES-256-GCM) i nigdy nie są zwracane "
"przez API — wyświetlana jest tylko zamaskowana wskazówka."

#: admin/src/views/VaultView.vue
msgid "Secrets are encrypted on save and never shown again."
msgstr "Sekrety są szyfrowane przy zapisie i nigdy więcej nie są wyświetlane."

#: admin/src/components/AiProviderSettings.vue
msgid "Select a model"
msgstr "Wybierz model"

#: admin/src/components/AiProviderSettings.vue
msgid "Select a provider"
msgstr "Wybierz dostawcę"

#: admin/src/components/WebhookForm.vue
msgid "Select a saved credential"
msgstr "Wybierz zapisane uwierzytelnienie"

#: admin/src/components/WebhookForm.vue
msgid "Select an existing chain or enter a new chain name"
msgstr "Wybierz istniejący łańcuch lub wprowadź nazwę nowego łańcucha"

#: admin/src/components/WebhookForm.vue
msgid "Select at least one upstream webhook to trigger this one"
msgstr "Wybierz co najmniej jeden webhook nadrzędny, który uruchomi ten webhook"

#: admin/src/components/ChainPicker.vue
msgid "Select chain or create new"
msgstr "Wybierz łańcuch lub utwórz nowy"

#: admin/src/components/ImportDialog.vue
msgid "Select credential"
msgstr "Wybierz uwierzytelnienie"

#: admin/src/components/FieldSelector.vue
msgid "Select field…"
msgstr "Wybierz pole…"

#: admin/src/components/FieldSelector.vue
msgid "Select this field"
msgstr "Wybierz to pole"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Select trigger"
msgstr "Wybierz wyzwalacz"

#: src/Abilities/AbilityCatalog.php:311
msgid ""
"Send a synchronous test delivery for a webhook using a provided or captured "
"payload, and return the HTTP result so the agent can verify the integration "
"end to end. This makes a REAL delivery now, so for an internal REST "
"endpoint it can actually create or modify data (e.g. create a WordPress "
"user); it requires confirmation. It sends the REAL mapped-and-glued "
"payload, so any non-2xx response means the build does not work and the run "
"STOPS there — the result (status + the endpoint's response body) comes back "
"to you, so fix the mapping or the pre-dispatch snippet from that response "
"and re-test. Order every plan so test_dispatch comes before enable_webhook, "
"and never treat a step as done just because you proposed it."
msgstr ""
"Wyślij synchroniczną testową dostawę dla webhooka, używając podanego lub "
"przechwyconego payloadu, i zwróć wynik HTTP, aby agent mógł zweryfikować "
"integrację od początku do końca. To PRAWDZIWA dostawa wykonywana teraz, "
"więc dla wewnętrznego endpointu REST może faktycznie utworzyć lub zmienić "
"dane (np. utworzyć użytkownika WordPressa); wymaga potwierdzenia. Wysyła "
"PRAWDZIWY zmapowany i przetworzony przez glue payload, więc każda odpowiedź "
"inna niż 2xx oznacza, że build nie działa, i wykonanie ZATRZYMUJE się w tym "
"miejscu — wynik (status + treść odpowiedzi endpointu) wraca do Ciebie, więc "
"popraw mapowanie lub snippet pre-dispatch na podstawie tej odpowiedzi i "
"przetestuj ponownie. Układaj każdy plan tak, aby test_dispatch był przed "
"enable_webhook, i nigdy nie traktuj kroku jako wykonanego tylko dlatego, że "
"go zaproponowałeś."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Sending…"
msgstr "Wysyłanie…"

#: admin/src/views/VaultView.vue
msgid "Sent as Authorization: Bearer <token>"
msgstr "Wysyłane jako Authorization: Bearer <token>"

#: admin/src/views/AiBuilderView.vue
msgid "Sent for you by the panel"
msgstr "Wysłane za Ciebie przez panel"

#: admin/src/views/AiBuilderView.vue
msgid "Sent for you by “Fix it”"
msgstr "Wysłane za Ciebie przez „Napraw to”"

#: admin/src/views/AiBuilderView.vue
msgid "Sent for you — the run resumed"
msgstr "Wysłane za Ciebie — wykonanie wznowione"

#: admin/src/components/HealthStatusBar.vue
msgid "Sent today"
msgstr "Wysłane dzisiaj"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Server Error"
msgstr "Błąd serwera"

#: src/Abilities/AbilityCatalog.php:186
msgid ""
"Set conditional-dispatch rules for a webhook+trigger so only matching "
"events leave the site. conditions MUST be an object "
"{\"enabled\":true,\"type\":\"and\"|\"or\",\"rules\":[{\"field\":\"<dot.path "
"into the captured "
"payload>\",\"operator\":\"equals|not_equals|contains|not_contains|greater_"
"than|less_than|is_empty|is_not_empty|is_true|is_false|array_contains|object_"
"contains\",\"value\":\"...\"}]}. A rule may add an optional "
"\"cast\":\"number\"|\"string\"|\"boolean\"|\"stringify\" to coerce the "
"payload value before comparing (e.g. numeric compare on a string field). A "
"rules item may also be a nested group "
"{\"type\":\"group\",\"match\":\"and\"|\"or\",\"rules\":[...]}, and there is "
"no limit on how many rules a webhook may carry — use as many as the user's "
"logic actually needs. conditions_evaluate_on decides WHICH payload the "
"field paths address, so set it deliberately: \"original\" (default) = the "
"raw captured payload, so paths look like \"args.0.form_id\" — read them "
"from get_trigger_schema; \"transformed\" = the payload AFTER the field "
"mapping AND after any pre-dispatch Code Glue snippet, so paths are the "
"mapping's target names plus any key the snippet injects — use this, and "
"ONLY this, when filtering on something a snippet computes. Mixing them up "
"silently breaks the filter: a path that does not exist evaluates to null, "
"and the NEGATIVE operators (not_equals, not_contains, is_empty) then PASS, "
"so the event is dispatched rather than filtered out. For a rule that must "
"fail closed when its field is missing, prefer a positive operator "
"(is_internal equals \"false\" rather than is_internal not_equals \"true\")."
msgstr ""
"Ustaw reguły warunkowej wysyłki dla pary webhook+wyzwalacz, aby witrynę "
"opuszczały tylko pasujące zdarzenia. conditions MUSI być obiektem "
"{\"enabled\":true,\"type\":\"and\"|\"or\",\"rules\":[{\"field\":\"<ścieżka."
"kropkowa w przechwyconym "
"payloadzie>\",\"operator\":\"equals|not_equals|contains|not_contains|"
"greater_than|less_than|is_empty|is_not_empty|is_true|is_false|array_"
"contains|object_contains\",\"value\":\"...\"}]}. Reguła może zawierać "
"opcjonalne \"cast\":\"number\"|\"string\"|\"boolean\"|\"stringify\", aby "
"rzutować wartość payloadu przed porównaniem (np. porównanie liczbowe na "
"polu tekstowym). Element rules może też być zagnieżdżoną grupą "
"{\"type\":\"group\",\"match\":\"and\"|\"or\",\"rules\":[...]}, a liczba "
"reguł na webhook nie jest ograniczona — użyj tylu, ilu naprawdę wymaga "
"logika użytkownika. conditions_evaluate_on decyduje, DO KTÓREGO payloadu "
"odnoszą się ścieżki pól, więc ustaw je świadomie: \"original\" (domyślnie) "
"= surowy przechwycony payload, więc ścieżki wyglądają jak "
"\"args.0.form_id\" — odczytaj je z get_trigger_schema; \"transformed\" = "
"payload PO mapowaniu pól I po ewentualnym snippecie pre-dispatch Code Glue, "
"więc ścieżki to nazwy docelowe mapowania plus klucze wstrzyknięte przez "
"snippet — użyj tego, i TYLKO tego, gdy filtrujesz po czymś, co oblicza "
"snippet. Pomylenie ich po cichu psuje filtr: nieistniejąca ścieżka daje "
"null, a operatory NEGATYWNE (not_equals, not_contains, is_empty) wtedy "
"PRZECHODZĄ, więc zdarzenie jest wysyłane zamiast odfiltrowane. Dla reguły, "
"która przy braku pola ma bezpiecznie zawieść, wybierz operator pozytywny "
"(is_internal equals \"false\" zamiast is_internal not_equals \"true\")."

#: src/Abilities/AbilityCatalog.php:185
msgid "Set conditions"
msgstr "Ustaw warunki"

#: admin/src/components/ChangeExpiryDialog.vue admin/src/components/CreateTokenDialog.vue admin/src/components/RotateTokenDialog.vue
msgid "Set expiration date"
msgstr "Ustaw datę wygaśnięcia"

#: src/Abilities/AbilityCatalog.php:169
msgid "Set field mapping"
msgstr "Ustaw mapowanie pól"

#: src/Abilities/AbilityCatalog.php:170
msgid ""
"Set the payload field mapping for a webhook+trigger. field_mapping MUST be "
"an object {\"mappings\":[{\"source\":\"<dot.path in the captured "
"payload>\",\"target\":\"<dot.path in the outgoing "
"body>\",\"cast\":\"number|string|boolean|stringify\" "
"(optional)}],\"excluded\":[\"<dot.path to "
"drop>\"],\"includeUnmapped\":true|false}. It can only move/rename/exclude "
"EXISTING payload fields — static or constant values are NOT supported "
"(inject those with a pre-dispatch Code Glue snippet instead). The mapping "
"runs BEFORE any pre-dispatch snippet, so snippet output cannot be mapped — "
"and, in the other direction, the snippet only ever sees what the mapping "
"LEFT BEHIND. With includeUnmapped:false everything unmapped is deleted, "
"including \"args\", so a snippet reading $args[0] gets nothing: whenever a "
"snippet needs a source field, map it through explicitly (e.g. source "
"\"args.0\" → target \"post_id\") and have the snippet unset it before "
"returning if it must not be sent. Run get_trigger_schema first and take "
"source paths from the real captured payload."
msgstr ""
"Ustaw mapowanie pól payloadu dla pary webhook+wyzwalacz. field_mapping MUSI "
"być obiektem {\"mappings\":[{\"source\":\"<ścieżka.kropkowa w przechwyconym "
"payloadzie>\",\"target\":\"<ścieżka.kropkowa w wychodzącym "
"body>\",\"cast\":\"number|string|boolean|stringify\" "
"(opcjonalnie)}],\"excluded\":[\"<ścieżka.kropkowa do "
"usunięcia>\"],\"includeUnmapped\":true|false}. Może jedynie "
"przenosić/zmieniać nazwy/wykluczać ISTNIEJĄCE pola payloadu — wartości "
"statyczne lub stałe NIE są obsługiwane (wstrzyknij je snippetem "
"pre-dispatch Code Glue). Mapowanie działa PRZED każdym snippetem "
"pre-dispatch, więc wyniku snippetu nie da się zmapować — a w drugą stronę "
"snippet widzi tylko to, co mapowanie ZOSTAWIŁO. Przy includeUnmapped:false "
"wszystko niezmapowane jest usuwane, łącznie z \"args\", więc snippet "
"czytający $args[0] nie dostaje nic: kiedy snippet potrzebuje pola "
"źródłowego, przemapuj je jawnie (np. source \"args.0\" → target "
"\"post_id\") i każ snippetowi je usunąć przed zwrotem, jeśli nie ma być "
"wysłane. Najpierw uruchom get_trigger_schema i bierz ścieżki źródłowe z "
"prawdziwego przechwyconego payloadu."

#: admin/src/App.vue admin/src/views/ActivityView.vue admin/src/views/SettingsView.vue
msgid "Settings"
msgstr "Ustawienia"

#: admin/src/views/SettingsView.vue
msgid "Settings saved successfully"
msgstr "Ustawienia zapisane pomyślnie"

#: admin/src/components/BuiltWebhookActions.vue admin/src/components/ShareBuildDialog.vue
msgid "Share this build"
msgstr "Udostępnij tę konfigurację"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Shared Example"
msgstr "Współdzielony przykład"

#: admin/src/components/BuildPublishFields.vue
msgid "Short summary"
msgstr "Krótkie podsumowanie"

#: admin/src/views/VaultView.vue
msgid "Show"
msgstr "Pokaż"

#: admin/src/views/SettingsView.vue
msgid "Show AI Dev Trace panel"
msgstr "Pokaż panel śladu deweloperskiego AI"

#: admin/src/components/AiProviderSettings.vue
msgid "Show all compatible (%d)"
msgstr "Pokaż wszystkie zgodne (%d)"

#: admin/src/components/MappingEditor.vue admin/src/components/TriggerSchemaPanel.vue
msgid "Show full"
msgstr "Pokaż całość"

#: admin/src/components/ImportDialog.vue
msgid "Show in list"
msgstr "Pokaż na liście"

#: admin/src/components/MappingEditor.vue admin/src/components/TriggerSchemaPanel.vue
msgid "Show less"
msgstr "Pokaż mniej"

#: admin/src/views/SettingsView.vue
msgid "Show menu under Tools"
msgstr "Pokaż menu w sekcji Narzędzia"

#: admin/src/views/VaultView.vue
msgid "Show password"
msgstr "Pokaż hasło"

#: admin/src/components/AiProviderSettings.vue
msgid "Show recommended"
msgstr "Pokaż polecane"

#: admin/src/views/VaultView.vue
msgid "Show secret"
msgstr "Pokaż sekret"

#: admin/src/components/ImportDialog.vue
msgid "Show “%s” in list"
msgstr "Pokaż „%s” na liście"

#: admin/src/components/LogsTable.vue admin/src/views/QueueView.vue
msgid "Showing %1$d to %2$d of %3$d"
msgstr "Wyświetlanie od %1$d do %2$d z %3$d"

#: admin/src/views/ProView.vue
msgid "Sites allowed"
msgstr "Dozwolone witryny"

#: admin/src/views/ProView.vue
msgid "Sites used"
msgstr "Wykorzystane witryny"

#: admin/src/views/SettingsView.vue
msgid "Size"
msgstr "Rozmiar"

#: admin/src/components/AiStepControls.vue
msgid "Skip"
msgstr "Pomiń"

#: admin/src/components/ImportDialog.vue
msgid "Skip the duplicates"
msgstr "Pomiń duplikaty"

#: admin/src/components/AiStepPanel.vue admin/src/views/LogsList.vue
msgid "Skipped"
msgstr "Pominięte"

#: admin/src/components/LogsTable.vue
msgid "Skipped:"
msgstr "Pominięto:"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Snippet Name"
msgstr "Nazwa fragmentu"

#: src/Abilities/GlueAbilities.php:199
#: src/Abilities/GlueAbilities.php:243
#: src/Abilities/GlueAbilities.php:267
#: src/Abilities/GlueAbilities.php:355
#: src/Abilities/GlueAbilities.php:374
#: src/Api/SnippetsController.php:193
#: src/Api/SnippetsController.php:202
#: src/Api/SnippetsController.php:235
msgid "Snippet not found."
msgstr "Nie znaleziono snippetu."

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Snippet ran but changed nothing"
msgstr "Snippet się wykonał, ale nic nie zmienił"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Snippet saved and assigned."
msgstr "Fragment zapisany i przypisany."

#: admin/src/views/ActivityView.vue
msgid "Snippets"
msgstr "Fragmenty"

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"Snippets already assigned keep running, but they cannot be edited or "
"previewed here."
msgstr ""
"Już przypisane snippety nadal działają, ale nie można ich tutaj edytować "
"ani podglądać."

#: src/Services/GluePermissions.php:201
msgid ""
"Snippets are PHP that runs on this site, so WordPress gates them the same "
"way it gates editing plugin code. Ask an administrator to make the change, "
"or to grant your role that capability."
msgstr ""
"Snippety to PHP uruchamiany na tej witrynie, więc WordPress ogranicza je "
"tak samo jak edycję kodu wtyczek. Poproś administratora o zmianę albo o "
"nadanie Twojej roli tego uprawnienia."

#: admin/src/components/ImportDialog.vue
msgid "Some parts were left out"
msgstr "Część elementów została pominięta"

#: src/Services/Ai/AgentOrchestrator.php:308
#. translators: %s: comma-separated ability names.
#, php-format
msgid ""
"Some proposed steps were removed because this site cannot run them: %s. The "
"remaining plan may be incomplete. If these are Code Glue abilities, make "
"sure Webhook Actions Pro is installed, up to date and licensed."
msgstr ""
"Część proponowanych kroków usunięto, bo ta witryna nie może ich wykonać: "
"%s. Pozostały plan może być niekompletny. Jeśli to zdolności Code Glue, "
"upewnij się, że Webhook Actions Pro jest zainstalowane, aktualne i ma "
"licencję."

#: admin/src/components/MappingEditor.vue
msgid "Source"
msgstr "Źródło"

#: admin/src/components/MappingEditor.vue
msgid "Source path (e.g., args.0.user_id)"
msgstr "Ścieżka źródłowa (np. args.0.user_id)"

#: src/Api/ChainsController.php:260
msgid "Source webhook does not exist."
msgstr "Źródłowy webhook nie istnieje."

#: admin/src/views/AiBuilderView.vue
msgid "Start a new build, then describe what you want to integrate."
msgstr "Rozpocznij nowy projekt, a następnie opisz, co chcesz zintegrować."

#: admin/src/views/ProView.vue
msgid "Starter"
msgstr "Starter"

#: admin/src/views/ExternalCronView.vue
msgid "Stats unavailable"
msgstr "Statystyki niedostępne"

#: admin/src/components/LogsTable.vue
msgid "Status"
msgstr "Status"

#: admin/src/components/AiStepPanel.vue
msgid "Step"
msgstr "Krok"

#: admin/src/views/AiBuilderView.vue
msgid "Step %1$s (%2$s) did not succeed: %3$s"
msgstr "Krok %1$s (%2$s) nie powiódł się: %3$s"

#: admin/src/views/VaultView.vue
msgid ""
"Store reusable authentication secrets once, then reference them from your "
"webhooks. Secrets are encrypted at rest and are never shown again after "
"saving — not even to you."
msgstr ""
"Zapisz wielokrotnego użytku sekrety uwierzytelniania raz, a następnie "
"odwołuj się do nich z webhooków. Sekrety są szyfrowane w spoczynku i nigdy "
"nie są ponownie wyświetlane po zapisaniu — nawet Tobie."

#: admin/src/components/ExternalCronChart.vue admin/src/components/HealthStatusBar.vue admin/src/components/TestWebhookDrawer.vue admin/src/views/LogsList.vue admin/src/views/WebhookLogs.vue
msgid "Success"
msgstr "Sukces"

#: admin/src/components/HealthStatusBar.vue
msgid "Success Rate"
msgstr "Wskaźnik powodzenia"

#: admin/src/components/ExternalCronChart.vue
msgid "Success rate 24h"
msgstr "Wskaźnik powodzenia 24h"

#: admin/src/App.vue
msgid "Switch to dark mode"
msgstr "Przełącz na tryb ciemny"

#: admin/src/components/FieldSelector.vue
msgid "Switch to field selector"
msgstr "Przełącz na selektor pól"

#: admin/src/App.vue
msgid "Switch to light mode"
msgstr "Przełącz na tryb jasny"

#: admin/src/components/FieldSelector.vue
msgid "Switch to manual input"
msgstr "Przełącz na ręczne wprowadzanie"

#: admin/src/components/WebhookCardContent.vue
msgid "Sync"
msgstr "Synchr."

#: admin/src/components/WebhookForm.vue
msgid "Synchronous Execution"
msgstr "Wykonywanie synchroniczne"

#: admin/src/components/BuiltWebhookActions.vue
msgid "Synchronous delivery"
msgstr "Dostarczanie synchroniczne"

#: admin/src/components/WebhookCardContent.vue
msgid "Synchronous execution"
msgstr "Wykonywanie synchroniczne"

#: admin/src/views/ActivityView.vue
msgid "System"
msgstr "System"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Tags (comma-separated)"
msgstr "Tagi (oddzielone przecinkami)"

#: admin/src/components/MappingEditor.vue admin/src/views/ExternalCronView.vue
msgid "Target"
msgstr "Cel"

#: admin/src/components/LogsTable.vue
msgid "Target URL"
msgstr "Docelowy adres URL"

#: admin/src/components/MappingEditor.vue
msgid "Target path (e.g., user_id)"
msgstr "Ścieżka docelowa (np. user_id)"

#: src/Api/ChainsController.php:263
msgid "Target webhook does not exist."
msgstr "Docelowy webhook nie istnieje."

#: src/Api/TriggersController.php:145
msgid "Taxonomy"
msgstr "Taksonomia"

#: admin/src/components/WebhookCardContent.vue admin/src/views/LogsList.vue admin/src/views/WebhookEdit.vue
msgid "Test"
msgstr "Testuj"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Test Webhook"
msgstr "Testuj webhook"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Test failed."
msgstr "Test nie powiódł się."

#: admin/src/components/TestWebhookDrawer.vue
msgid "Test queued — it will run on the next cron cycle."
msgstr "Test dodany do kolejki — zostanie uruchomiony w następnym cyklu crona."

#: admin/src/views/ProView.vue
msgid "Test webhook delivery on demand"
msgstr "Testowanie dostarczania webhooków na żądanie"

#: src/Abilities/AbilityCatalog.php:310
msgid "Test-dispatch a webhook"
msgstr "Testowo wyślij webhook"

#: src/Abilities/GlueAbilities.php:108
msgid ""
"Test-run a snippet (by snippet_id, or raw code) against a real captured "
"payload WITHOUT dispatching anything. Pass webhook_id+trigger to use that "
"webhook's captured example WITH ITS STORED FIELD MAPPING APPLIED — the "
"exact array the snippet gets at dispatch — or provide an explicit payload "
"to test a shape yourself. Returns input_payload (what the snippet received; "
"check that the keys your code reads are actually there), the resulting "
"payload, any PHP error and printed output. If result is identical to "
"input_payload, your code matched nothing and no-oped — fix it before "
"assigning. Always preview before assigning."
msgstr ""
"Uruchom testowo snippet (po snippet_id lub jako surowy kod) na prawdziwym "
"przechwyconym payloadzie BEZ wysyłania czegokolwiek. Przekaż "
"webhook_id+trigger, aby użyć przechwyconego przykładu tego webhooka Z "
"ZASTOSOWANYM ZAPISANYM MAPOWANIEM PÓL — dokładnie tej tablicy, którą "
"snippet dostaje przy wysyłce — albo podaj jawny payload, aby samodzielnie "
"przetestować kształt. Zwraca input_payload (co snippet otrzymał; sprawdź, "
"czy klucze czytane przez Twój kod naprawdę tam są), wynikowy payload, "
"ewentualny błąd PHP i wypisane wyjście. Jeśli wynik jest identyczny z "
"input_payload, Twój kod niczego nie dopasował i nic nie zrobił — popraw go "
"przed przypisaniem. Zawsze rób podgląd przed przypisaniem."

#: src/Abilities/TestAbilities.php:79
msgid "That URL is not allowed (private, reserved or invalid host)."
msgstr ""
"Ten adres URL jest niedozwolony (host prywatny, zarezerwowany lub "
"nieprawidłowy)."

#: src/Services/Builds/PublishedPageProbe.php:29
msgid "That is not a published build address."
msgstr "To nie jest adres opublikowanego builda."

#: admin/src/views/AiBuilderView.vue
msgid ""
"That is roughly %s agent runs. A run is one message you send; most "
"integrations take two or three to plan, build and test."
msgstr ""
"To mniej więcej %s uruchomień agenta. Uruchomienie to jedna wysłana "
"wiadomość; większość integracji potrzebuje dwóch lub trzech, aby "
"zaplanować, zbudować i przetestować."

#: src/Abilities/WriteAbilities.php:229
msgid "That link would create a cycle across an existing chain."
msgstr "To ogniwo utworzyłoby cykl w istniejącym łańcuchu."

#: src/Api/ChainsController.php:267
msgid "That link would create a cycle in the chain graph."
msgstr "To połączenie utworzyłoby cykl w grafie łańcucha."

#: admin/src/components/WebhookForm.vue admin/src/views/WebhooksList.vue
msgid ""
"The %1$srecommended approach is asynchronous delivery%2$s via the built-in "
"system cron or an external cron job."
msgstr ""
"%1$sZalecanym podejściem jest dostarczanie asynchroniczne%2$s za pomocą "
"wbudowanego crona systemowego lub zewnętrznego zadania cron."

#: src/Services/Ai/WpAiClientTransport.php:149
msgid "The AI Client returned no text."
msgstr "Klient AI nie zwrócił tekstu."

#: src/Services/Ai/AgentOrchestrator.php:296
msgid ""
"The AI answered in prose instead of a runnable plan, so no steps were "
"proposed and nothing has been applied. Ask it to \"send that as a plan\" to "
"try again."
msgstr ""
"AI odpowiedziało prozą zamiast wykonywalnym planem, więc nie zaproponowano "
"żadnych kroków i nic nie zostało zastosowane. Poproś je: „wyślij to jako "
"plan”, aby spróbować ponownie."

#: src/Services/Ai/AnthropicTransport.php:134
#: src/Services/Ai/GoogleTransport.php:139
#: src/Services/Ai/OpenAiTransport.php:133
msgid "The AI provider key could not be decrypted."
msgstr "Nie udało się odszyfrować klucza dostawcy AI."

#: src/Services/Ai/AgentOrchestrator.php:567
#. translators: %s: the AI provider's error message.
#, php-format
msgid ""
"The AI provider request failed mid-turn (%s). Progress so far is saved — "
"send the message again to retry from here."
msgstr ""
"Żądanie do dostawcy AI nie powiodło się w trakcie tury (%s). Dotychczasowy "
"postęp został zapisany — wyślij wiadomość ponownie, aby kontynuować od tego "
"miejsca."

#: src/Services/Ai/AnthropicTransport.php:88
#: src/Services/Ai/GoogleTransport.php:95
#: src/Services/Ai/OpenAiTransport.php:93
msgid "The AI provider returned an error."
msgstr "Dostawca AI zwrócił błąd."

#: src/Services/Ai/AnthropicTransport.php:103
#: src/Services/Ai/GoogleTransport.php:108
#: src/Services/Ai/OpenAiTransport.php:102
msgid "The AI provider returned no text."
msgstr "Dostawca AI nie zwrócił tekstu."

#: admin/src/views/AiBuilderView.vue
msgid ""
"The AI read this reference on our server — the request shape below comes "
"from the vendor's documentation, not from memory."
msgstr ""
"AI przeczytało tę dokumentację na naszym serwerze — poniższy kształt "
"żądania pochodzi z dokumentacji dostawcy, nie z pamięci."

#: src/Services/Ai/HostedTrialTransport.php:123
msgid "The AI returned no text."
msgstr "AI nie zwróciło żadnego tekstu."

#: src/Services/Ai/HostedTrialTransport.php:154
msgid "The AI service returned an error."
msgstr "Usługa AI zwróciła błąd."

#: src/Services/Ai/AgentOrchestrator.php:318
msgid ""
"The API Docs Library tried to read this service's reference but it was not "
"ready in time, so this plan relies on the model's own knowledge of that "
"API. Test before enabling."
msgstr ""
"API Docs Library próbowała przeczytać dokumentację tej usługi, ale nie "
"zdążyła na czas, więc ten plan opiera się na własnej wiedzy modelu o tym "
"API. Przetestuj przed włączeniem."

#: admin/src/views/ProView.vue
msgid "The Pro plugin is installed but not activated in WordPress."
msgstr "Wtyczka Pro jest zainstalowana, ale nie aktywowana w WordPress."

#: admin/src/components/WebhookForm.vue
msgid ""
"The URL where webhook payloads will be sent. Supports %1$s{{ field.path "
"}}%2$s templates — resolved against the final payload, after code glue "
"applied."
msgstr ""
"Adres URL, na który będą wysyłane dane webhooka. Obsługuje szablony %1$s{{ "
"field.path }}%2$s — rozwiązywane względem końcowych danych, po zastosowaniu "
"code glue."

#: src/Services/Ai/WpAiClientTransport.php:73
msgid "The WordPress AI Client is not available."
msgstr "Klient AI WordPressa jest niedostępny."

#: admin/src/views/SettingsView.vue
msgid ""
"The base number of seconds used to calculate each retry delay. Exact role "
"depends on the strategy: multiplier for exponential, interval for linear, "
"constant for fixed."
msgstr ""
"Bazowa liczba sekund używana do obliczania każdego opóźnienia ponowienia. "
"Dokładna rola zależy od strategii: mnożnik dla wykładniczej, interwał dla "
"liniowej, stała dla stałej."

#: src/Services/Export/BuildImporter.php:254
#. translators: %s: chain name.
#, php-format
msgid "The chain \"%s\" could not be created."
msgstr "Nie udało się utworzyć łańcucha „%s”."

#: admin/src/views/WebhooksList.vue
msgid ""
"The chain and all its links will be removed. Member webhooks stay, but lose "
"their chain-link triggers."
msgstr ""
"Łańcuch i wszystkie jego połączenia zostaną usunięte. Webhooki pozostaną, "
"ale stracą wyzwalacze połączeń łańcucha."

#: src/Abilities/WriteAbilities.php:350
#. translators: 1: rule field path, 2: operator
#, php-format
msgid ""
"The condition rule on \"%1$s\" (%2$s) has an empty value — ask the user for "
"the value before setting this condition."
msgstr ""
"Reguła warunku dla \"%1$s\" (%2$s) ma pustą wartość — zapytaj użytkownika o "
"wartość przed ustawieniem tego warunku."

#: src/Services/Ai/AnthropicTransport.php:130
#: src/Services/Ai/GoogleTransport.php:135
#: src/Services/Ai/OpenAiTransport.php:129
msgid "The configured AI provider key was not found in the vault."
msgstr "Skonfigurowany klucz dostawcy AI nie został znaleziony w sejfie."

#: admin/src/views/LogsList.vue
msgid ""
"The delivery runs when the queue next drains — on the next cron tick. On a "
"quiet site that can take a while, so you can also run it right now."
msgstr ""
"Dostawa wykona się, gdy kolejka zostanie następnym razem opróżniona — przy "
"najbliższym uruchomieniu crona. Na mało odwiedzanej witrynie może to chwilę "
"potrwać, więc możesz też uruchomić ją od razu."

#: admin/src/views/VaultView.vue
msgid ""
"The encryption key lives in %1$swp-config.php%2$s (%1$sFSWA_SECRET_KEY%2$s) "
"and is not stored in the database. A database-only dump cannot decrypt your "
"secrets."
msgstr ""
"Klucz szyfrowania znajduje się w %1$swp-config.php%2$s "
"(%1$sFSWA_SECRET_KEY%2$s) i nie jest przechowywany w bazie danych. Zrzut "
"samej bazy danych nie odszyfruje Twoich sekretów."

#: src/Services/Ai/ProbeInterpreter.php:28
#. translators: %s: underlying HTTP error message.
#, php-format
msgid ""
"The endpoint could not be reached (%s). Check the URL is correct and "
"publicly reachable, then retry."
msgstr ""
"Nie udało się połączyć z punktem końcowym (%s). Sprawdź, czy adres URL jest "
"poprawny i publicznie dostępny, a następnie ponów."

#: src/Services/Ai/ProbeInterpreter.php:31
msgid ""
"The endpoint could not be reached. Check the URL is correct and publicly "
"reachable, then retry."
msgstr ""
"Nie udało się połączyć z punktem końcowym. Sprawdź, czy adres URL jest "
"poprawny i publicznie dostępny, a następnie ponów."

#: src/Services/Ai/ProbeInterpreter.php:75
#. translators: %d: HTTP status code returned to the empty-body probe.
#, php-format
msgid ""
"The endpoint is reachable but answered %d — expected, because a probe sends "
"an EMPTY body. This does NOT show the integration works. Validate it with a "
"test delivery (test_dispatch), which sends the real mapped payload, before "
"going live."
msgstr ""
"Endpoint jest osiągalny, ale odpowiedział %d — to spodziewane, bo "
"sondowanie wysyła PUSTE body. To NIE dowodzi, że integracja działa. "
"Zweryfikuj ją testową dostawą (test_dispatch), która wysyła prawdziwy "
"zmapowany payload, zanim uruchomisz na żywo."

#: src/Services/Ai/DispatchInterpreter.php:47
#. translators: %d: HTTP status code (401 or 403).
#, php-format
msgid ""
"The endpoint rejected the test delivery with %d — it needs authentication. "
"Attach a credential to the webhook, then retry."
msgstr ""
"Endpoint odrzucił testową dostawę z kodem %d — wymaga uwierzytelnienia. "
"Dołącz poświadczenie do webhooka i ponów."

#: src/Services/Ai/DispatchInterpreter.php:75
#. translators: %d: HTTP status code returned by the endpoint.
#, php-format
msgid ""
"The endpoint rejected the test delivery with %d — nothing was created on "
"the far side. Fix the payload (field mapping or the pre-dispatch snippet) "
"and retry before going live."
msgstr ""
"Endpoint odrzucił testową dostawę z kodem %d — po drugiej stronie nic nie "
"powstało. Popraw payload (mapowanie pól lub snippet pre-dispatch) i ponów, "
"zanim uruchomisz na żywo."

#: src/Services/Ai/ProbeInterpreter.php:43
#. translators: %d: HTTP status code (401 or 403).
#, php-format
msgid ""
"The endpoint responded %d — it needs authentication. Add a credential to "
"the webhook, then retry."
msgstr ""
"Punkt końcowy odpowiedział %d — wymaga uwierzytelnienia. Dodaj "
"uwierzytelnienie do webhooka, a następnie ponów."

#: src/Services/Ai/DispatchInterpreter.php:60
#: src/Services/Ai/ProbeInterpreter.php:55
#. translators: %d: HTTP status code (404, 405 or 410).
#, php-format
msgid ""
"The endpoint responded %d — the URL may be wrong or not accept this "
"request. Double-check the endpoint URL on the webhook, then retry."
msgstr ""
"Punkt końcowy odpowiedział %d — adres URL może być błędny lub nie "
"akceptować tego żądania. Sprawdź dokładnie adres URL punktu końcowego w "
"webhooku, a następnie ponów."

#: admin/src/views/AiBuilderView.vue
msgid "The endpoint responded:"
msgstr "Endpoint odpowiedział:"

#: src/Services/Ai/PlanExecutor.php:942
#. translators: %s: trigger (do_action hook) name.
#, php-format
msgid ""
"The example payload for \"%s\" has now been captured, so the field paths "
"are readable. Read it with get_trigger_schema and finish the build: set the "
"field mapping from the REAL paths, add a pre-dispatch Code Glue snippet if "
"the destination needs a shape mapping alone cannot produce, then "
"test_dispatch before enabling."
msgstr ""
"Przykładowy payload dla „%s” został właśnie przechwycony, więc ścieżki pól "
"są już czytelne. Odczytaj go przez get_trigger_schema i dokończ build: "
"ustaw mapowanie pól z PRAWDZIWYCH ścieżek, dodaj snippet pre-dispatch Code "
"Glue, jeśli miejsce docelowe potrzebuje kształtu, którego samo mapowanie "
"nie da, a potem test_dispatch przed włączeniem."

#: src/Services/Builds/PublishBuildClient.php:148
msgid "The library already has a build like this one."
msgstr "Biblioteka ma już build podobny do tego."

#: admin/src/components/BuildPublishProgress.vue
msgid ""
"The page appears at this address once the website finishes rebuilding — it "
"is safe to close this."
msgstr ""
"Strona pojawi się pod tym adresem po zakończeniu przebudowy witryny — "
"możesz spokojnie zamknąć to okno."

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"The payload shape is the same for a trigger everywhere, so a new webhook "
"can borrow an example already captured elsewhere. Turn off to require this "
"webhook to capture its own."
msgstr ""
"Kształt ładunku dla danego wyzwalacza jest wszędzie taki sam, więc nowy "
"webhook może pożyczyć przykład przechwycony już gdzie indziej. Wyłącz, aby "
"wymagać od tego webhooka przechwycenia własnego."

#: src/Services/Builds/PublishBuildClient.php:179
msgid ""
"The publishing service had a temporary problem — nothing was published. "
"Please try again."
msgstr ""
"Usługa publikowania miała chwilowy problem — nic nie zostało opublikowane. "
"Spróbuj ponownie."

#: src/Services/Builds/PublishBuildClient.php:117
msgid "The publishing service rejected this build."
msgstr "Usługa publikowania odrzuciła ten build."

#: src/Services/Builds/PublishBuildClient.php:188
#. translators: %d: HTTP status code.
#, php-format
msgid "The publishing service returned an unexpected error (HTTP %d)."
msgstr "Usługa publikowania zwróciła nieoczekiwany błąd (HTTP %d)."

#: admin/src/components/WebhookForm.vue
msgid ""
"The secret is resolved securely at delivery time and never exposed. Manage "
"credentials in the"
msgstr ""
"Sekret jest bezpiecznie rozwiązywany w momencie dostarczenia i nigdy nie "
"jest ujawniany. Zarządzaj uwierzytelnieniami w"

#: src/Services/Ai/DispatchInterpreter.php:36
msgid ""
"The test delivery never reached the endpoint. Check the URL is correct and "
"publicly reachable, then retry."
msgstr ""
"Testowa dostawa nigdy nie dotarła do endpointu. Sprawdź, czy adres URL jest "
"poprawny i publicznie osiągalny, a potem ponów."

#: src/Services/Ai/TrialClient.php:192
msgid ""
"The trial service is not responding right now. Please try again in a few "
"minutes."
msgstr "Usługa okresu próbnego nie odpowiada. Spróbuj ponownie za kilka minut."

#: admin/src/views/AiBuilderView.vue
msgid "The verification challenge could not be completed. Please try again."
msgstr "Nie udało się ukończyć weryfikacji. Spróbuj ponownie."

#: src/Abilities/TestAbilities.php:167
msgid "The webhook has no triggers; provide one."
msgstr "Webhook nie ma wyzwalaczy; podaj jeden."

#: src/Services/Ai/PlanExecutor.php:177
msgid "There is no plan to run yet."
msgstr "Nie ma jeszcze planu do uruchomienia."

#: src/Services/Ai/PlanExecutor.php:546
msgid "There is nothing left to revert."
msgstr "Nie ma już nic do cofnięcia."

#: src/Api/PublishBuildController.php:136
msgid "There is nothing to publish — this build has no webhooks."
msgstr "Nie ma czego publikować — ten build nie ma żadnych webhooków."

#: src/Services/Ai/PlanExecutor.php:492
msgid "There is nothing to revert."
msgstr "Nie ma nic do cofnięcia."

#: admin/src/components/WebhookForm.vue
msgid ""
"These are the primary way to send data for %1$s requests. If none are set, "
"the mapped payload is sent as %2$s?payload=&lt;json&gt;%3$s."
msgstr ""
"To podstawowy sposób wysyłania danych dla żądań %1$s. Jeśli żadne nie są "
"ustawione, zmapowane dane są wysyłane jako %2$s?payload=&lt;json&gt;%3$s."

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"These containers exist on your site too, but the keys inside them are yours "
"and are not in our copy — do not map a field below one until you have your "
"own capture:"
msgstr ""
"Te kontenery istnieją też na Twojej witrynie, ale klucze w nich są Twoje i "
"nie ma ich w naszej kopii — nie mapuj pola pod żadnym z nich, dopóki nie "
"masz własnego przechwyconego payloadu:"

#: admin/src/views/WebhooksList.vue
msgid "They will move to the Unchained section with “No trigger assigned”."
msgstr ""
"Zostaną przeniesione do sekcji „Bez łańcucha” z etykietą „Brak przypisanego "
"wyzwalacza”."

#: admin/src/views/AiBuilderView.vue
msgid "Thinking…"
msgstr "Myślę…"

#: src/Services/GluePermissions.php:192
msgid "This API token cannot write Code Glue."
msgstr "Ten token API nie może zapisywać Code Glue."

#: admin/src/components/LogsTable.vue
msgid "This action cannot be undone."
msgstr "Tej operacji nie można cofnąć."

#: admin/src/views/SettingsView.vue
msgid "This action cannot be undone. All logs will be permanently deleted."
msgstr "Tej operacji nie można cofnąć. Wszystkie logi zostaną trwale usunięte."

#: admin/src/components/BuildPublishFields.vue
msgid "This becomes the page title and headline."
msgstr "To będzie tytuł strony i nagłówek."

#: admin/src/components/ImportDialog.vue
msgid ""
"This build calls this site’s own WP REST API. Reuse or create a WordPress "
"Application Password — there is no secret to paste."
msgstr ""
"Ta konfiguracja wywołuje własne REST API tej witryny. Użyj istniejącego lub "
"utwórz nowe hasło aplikacji WordPressa — nie musisz nic wklejać."

#: admin/src/components/ImportDialog.vue
msgid "This build contains %d Code Glue snippet"
msgid_plural "This build contains %d Code Glue snippets"
msgstr[0] "Ta konfiguracja zawiera %d fragment Code Glue"
msgstr[1] "Ta konfiguracja zawiera %d fragmenty Code Glue"
msgstr[2] "Ta konfiguracja zawiera %d fragmentów Code Glue"

#: src/Services/Builds/PublishBuildClient.php:109
msgid "This build did not pass our content check."
msgstr "Ten build nie przeszedł naszej kontroli treści."

#: admin/src/components/ImportDialog.vue
msgid ""
"This build includes a Build-with-AI transcript, shown for reference on the "
"source — it is not imported."
msgstr ""
"Ta konfiguracja zawiera zapis rozmowy z Buduj z AI, pokazywany poglądowo w "
"źródle — nie jest importowany."

#: admin/src/components/ImportDialog.vue
msgid "This build needs authorization credentials"
msgstr "Ta konfiguracja wymaga uwierzytelnień"

#: src/Api/CredentialsController.php:379
#. translators: %d: number of webhooks using this credential
#, php-format
msgid "This credential is used by %d webhook. Detach it or delete with force."
msgid_plural "This credential is used by %d webhooks. Detach them or delete with force."
msgstr[0] ""
"To uwierzytelnienie jest używane przez %d webhook. Odłącz je lub usuń "
"wymuszając."
msgstr[1] ""
"To uwierzytelnienie jest używane przez %d webhooki. Odłącz je lub usuń "
"wymuszając."
msgstr[2] ""
"To uwierzytelnienie jest używane przez %d webhooków. Odłącz je lub usuń "
"wymuszając."

#: admin/src/components/TriggerSchemaPanel.vue
msgid ""
"This example comes from the WP Webhooks Payload Library, captured on our "
"own test sites — the SHAPE is real, the VALUES are ours. Fire this event "
"once on your site and your own capture replaces it automatically."
msgstr ""
"Ten przykład pochodzi z WP Webhooks Payload Library, przechwycony na "
"naszych witrynach testowych — KSZTAŁT jest prawdziwy, WARTOŚCI są nasze. "
"Wywołaj to zdarzenie raz na swojej witrynie, a Twój własny payload zastąpi "
"go automatycznie."

#: src/Services/SiteEnvironment.php:78
msgid ""
"This is a WordPress Playground demo — it disappears when you close the tab, "
"so builds cannot be published from it. Install Webhook Actions on your own "
"site to publish."
msgstr ""
"To demo WordPress Playground — znika po zamknięciu karty, więc nie można z "
"niego publikować buildów. Zainstaluj Webhook Actions na własnej witrynie, "
"aby publikować."

#: admin/src/components/PayloadGlueDrawer.vue admin/src/components/TriggerSchemaPanel.vue
msgid ""
"This is the final payload on the wire — used for Transformed Conditions and "
"URL/param templates."
msgstr ""
"To jest ostateczny payload wysyłany na łączu — używany przez warunki na "
"payloadzie przekształconym i szablony URL/parametrów."

#: src/Services/Ai/DispatchInterpreter.php:122
#. translators: %d: how many times this identical failure has now occurred.
#, php-format
msgid ""
"This is the same rejection for the %d time running — the endpoint returned "
"an identical response, so the last change did not touch what it objects to. "
"Do not reformat that value again. Read the endpoint's own error text and "
"ask what its API contract wants that the request does not carry: a "
"request-level option or flag (many APIs need one before they will coerce or "
"accept a value), a wrapper key the record has to sit inside, a field that "
"must be a different type, or a value that must already exist on the far "
"side. Name the specific API and what you believe it needs; if you are not "
"sure, say so plainly and ask the user to confirm it from that API's "
"documentation instead of guessing a third format."
msgstr ""
"To już %d z rzędu takie samo odrzucenie — endpoint zwrócił identyczną "
"odpowiedź, więc ostatnia zmiana nie dotknęła tego, do czego ma "
"zastrzeżenia. Nie formatuj tej wartości po raz kolejny. Przeczytaj własny "
"komunikat błędu endpointu i zapytaj, czego wymaga jego kontrakt API, a "
"czego żądanie nie niesie: opcji lub flagi na poziomie żądania (wiele API "
"potrzebuje jej, zanim zaakceptuje lub przekonwertuje wartość), klucza "
"opakowującego, w którym rekord musi się znaleźć, pola o innym typie albo "
"wartości, która musi już istnieć po drugiej stronie. Nazwij konkretne API i "
"to, czego Twoim zdaniem potrzebuje; jeśli nie masz pewności, powiedz to "
"wprost i poproś użytkownika o potwierdzenie w dokumentacji tego API, "
"zamiast zgadywać trzeci format."

#: admin/src/components/WebhookForm.vue
msgid ""
"This moves the Authorization value into the encrypted vault and references "
"it by name. The webhook keeps working unchanged."
msgstr ""
"Przenosi to wartość Authorization do zaszyfrowanego sejfu i odwołuje się do "
"niej po nazwie. Webhook działa bez zmian."

#: admin/src/views/VaultView.vue
msgid "This permanently removes the stored secret."
msgstr "Spowoduje to trwałe usunięcie przechowywanego sekretu."

#: admin/src/views/AiBuilderView.vue
msgid ""
"This removes the conversation and its build history. It does not delete any "
"webhooks it created."
msgstr ""
"To usuwa rozmowę i historię jej budowania. Nie usuwa żadnych webhooków, "
"które utworzyła."

#: src/Abilities/AbilityCatalog.php:315
msgid ""
"This sends a REAL delivery to the endpoint right now — it is not a dry run. "
"If the webhook targets this site’s own REST API (e.g. wp-json/wp/v2/users) "
"it can actually create or modify data, such as creating a WordPress user. "
"Confirm to send it for real."
msgstr ""
"To wysyła PRAWDZIWE dostarczenie do endpointu w tej chwili — to nie jest "
"próba na sucho. Jeśli webhook wskazuje na REST API tej witryny (np. "
"wp-json/wp/v2/users), może faktycznie utworzyć lub zmodyfikować dane, np. "
"utworzyć użytkownika WordPressa. Potwierdź, aby wysłać naprawdę."

#: src/Services/GluePermissions.php:189
msgid ""
"This site defines DISALLOW_FILE_EDIT, which turns off editing code from the "
"dashboard. That is a server-level choice and nothing in this plugin can "
"override it — it has to be changed in wp-config.php. Snippets that are "
"already assigned keep running."
msgstr ""
"Ta witryna definiuje DISALLOW_FILE_EDIT, co wyłącza edycję kodu z kokpitu. "
"To decyzja na poziomie serwera i nic w tej wtyczce nie może jej obejść — "
"trzeba ją zmienić w wp-config.php. Już przypisane snippety nadal działają."

#: admin/src/components/AiProviderSettings.vue
msgid ""
"This site no longer includes the WordPress 7.0 AI Client. Connect a "
"provider key below, or restore WordPress 7.0 or later to use your "
"connectors again."
msgstr ""
"Ta strona nie zawiera już Klienta AI WordPressa 7.0. Połącz klucz dostawcy "
"poniżej lub przywróć WordPressa 7.0 lub nowszego, aby ponownie korzystać ze "
"swoich łączników."

#: src/Services/SiteEnvironment.php:82
msgid ""
"This site's address is not reachable from the internet, so a build "
"published from it could not be verified or visited. Publish from the site "
"that actually runs this integration."
msgstr ""
"Adres tej witryny nie jest osiągalny z internetu, więc opublikowanego z "
"niej builda nie dałoby się zweryfikować ani odwiedzić. Publikuj z witryny, "
"na której ta integracja naprawdę działa."

#: admin/src/components/AiStepControls.vue
msgid "This step goes live or changes data. Confirm to run it."
msgstr "Ten krok uruchamia coś na żywo lub zmienia dane. Potwierdź, aby go wykonać."

#: admin/src/components/AiStepControls.vue
msgid ""
"This step maps a field we cannot see from here. The example payload came "
"from the WP Webhooks Payload Library, and these paths sit inside a "
"container whose contents are specific to your site:"
msgstr ""
"Ten krok mapuje pole, którego stąd nie widzimy. Przykładowy payload "
"pochodzi z WP Webhooks Payload Library, a te ścieżki leżą w kontenerze, "
"którego zawartość jest specyficzna dla Twojej witryny:"

#: admin/src/components/AiStepControls.vue
msgid ""
"This step needs a stored auth credential. Pick one from the vault or create "
"a new one — the secret stays in the vault and is injected only at dispatch."
msgstr ""
"Ten krok wymaga zapisanego uwierzytelnienia. Wybierz jedno z sejfu lub "
"utwórz nowe — sekret pozostaje w sejfie i jest wstrzykiwany dopiero przy "
"wysyłce."

#: src/Abilities/TestAbilities.php:275
#. translators: %s: plugin slug and version the reference payload was captured on, e.g. "contact-form-7 6.1.7".
#, php-format
msgid ""
"This test sent our reference payload, captured on %s, not data from this "
"site: a 2xx proves the endpoint accepts the shape the mapping produces, not "
"that the field VALUES are right. Tell the user, and ask them to fire the "
"real event once if those values matter."
msgstr ""
"Ten test wysłał nasz payload referencyjny, przechwycony na %s, a nie dane z "
"tej witryny: 2xx dowodzi, że endpoint akceptuje kształt tworzony przez "
"mapowanie, a nie że WARTOŚCI pól są poprawne. Powiedz to użytkownikowi i "
"poproś o jednorazowe wywołanie prawdziwego zdarzenia, jeśli te wartości "
"mają znaczenie."

#: admin/src/components/AiStepPanel.vue
msgid ""
"This test sent our reference payload, not data from this site — it proves "
"the endpoint accepts the shape, not the values."
msgstr ""
"Ten test wysłał nasz payload referencyjny, a nie dane z tej witryny — "
"dowodzi, że endpoint akceptuje kształt, nie wartości."

#: src/Abilities/TestAbilities.php:272
msgid ""
"This test sent our reference payload, not data from this site: a 2xx proves "
"the endpoint accepts the shape the mapping produces, not that the field "
"VALUES are right. Tell the user, and ask them to fire the real event once "
"if those values matter."
msgstr ""
"Ten test wysłał nasz payload referencyjny, a nie dane z tej witryny: 2xx "
"dowodzi, że endpoint akceptuje kształt tworzony przez mapowanie, a nie że "
"WARTOŚCI pól są poprawne. Powiedz to użytkownikowi i poproś o jednorazowe "
"wywołanie prawdziwego zdarzenia, jeśli te wartości mają znaczenie."

#: admin/src/components/RotateTokenDialog.vue
msgid ""
"This token is %1$sexpired%2$s. Rotating will issue a new secret — but you "
"must also extend the expiry, otherwise the token will remain invalid "
"immediately after rotation."
msgstr ""
"Ten token %1$swygasł%2$s. Rotacja wyda nowy sekret — ale musisz również "
"przedłużyć wygaśnięcie, w przeciwnym razie token pozostanie nieważny "
"natychmiast po rotacji."

#: admin/src/components/TokenCreatedDialog.vue
msgid ""
"This token will only be shown once. Copy it now — you won't be able to see "
"it again."
msgstr ""
"Ten token zostanie pokazany tylko raz. Skopiuj go teraz — nie będziesz mógł "
"go już zobaczyć."

#: admin/src/views/VaultView.vue
msgid ""
"This usually means the encryption key changed (e.g. %1$sFSWA_SECRET_KEY%2$s "
"or WordPress salts). Edit each affected credential and re-enter its secret "
"to fix it."
msgstr ""
"Zwykle oznacza to, że klucz szyfrowania uległ zmianie (np. "
"%1$sFSWA_SECRET_KEY%2$s lub sole WordPress). Edytuj każde dotknięte "
"uwierzytelnienie i wprowadź ponownie jego sekret, aby to naprawić."

#: admin/src/components/WebhookForm.vue
msgid ""
"This webhook executes synchronously. Slow or unreachable endpoints will "
"delay page loads and frontend interactions."
msgstr ""
"Ten webhook wykonuje się synchronicznie. Wolne lub nieosiągalne punkty "
"końcowe opóźnią ładowanie stron i interakcje frontendu."

#: src/Abilities/GlueAbilities.php:134
msgid ""
"This webhook is LIVE — the snippet's PHP will run on every real dispatch "
"from now on. A snippet error never breaks the delivery (the payload is sent "
"unmodified and the error is logged). Confirm to attach it."
msgstr ""
"Ten webhook jest NA ŻYWO — PHP snippetu będzie od teraz uruchamiane przy "
"każdej prawdziwej wysyłce. Błąd snippetu nigdy nie przerywa dostawy "
"(payload jest wysyłany bez zmian, a błąd trafia do logu). Potwierdź, aby go "
"dołączyć."

#: admin/src/views/WebhooksList.vue
msgid "This webhook participates in a chain:"
msgid_plural "This webhook participates in chains:"
msgstr[0] "Ten webhook należy do łańcucha:"
msgstr[1] "Ten webhook należy do łańcuchów:"
msgstr[2] "Ten webhook należy do łańcuchów:"

#: admin/src/views/WebhooksList.vue
msgid "This webhook will become an orphan:"
msgid_plural "These webhooks will become orphans:"
msgstr[0] "Ten webhook stanie się osierocony:"
msgstr[1] "Te webhooki staną się osierocone:"
msgstr[2] "Te webhooki staną się osierocone:"

#: admin/src/components/WebhookForm.vue admin/src/views/WebhooksList.vue
msgid ""
"This webhook will fire inline during the WordPress request that triggers "
"it, bypassing the queue. Slow or unreachable endpoints can %1$sdelay page "
"loads, form submissions, and other frontend interactions.%2$s"
msgstr ""
"Ten webhook zostanie wywołany bezpośrednio podczas żądania WordPress, które "
"go uruchamia, z pominięciem kolejki. Wolne lub niedostępne punkty końcowe "
"mogą %1$sopóźniać ładowanie stron, wysyłanie formularzy i inne interakcje "
"frontendu.%2$s"

#: admin/src/components/ConditionsEditor.vue
msgid "This webhook will run on every trigger."
msgstr "Ten webhook uruchomi się przy każdym wyzwalaczu."

#: admin/src/views/SettingsView.vue
msgid "This will permanently delete all logs from the database."
msgstr "Spowoduje to trwałe usunięcie wszystkich logów z bazy danych."

#: admin/src/views/WebhooksList.vue
msgid ""
"This will permanently delete the webhook and all associated data. This "
"action cannot be undone."
msgstr ""
"Spowoduje to trwałe usunięcie webhooka i wszystkich powiązanych danych. Tej "
"operacji nie można cofnąć."

#: admin/src/views/ApiTokensView.vue
msgid ""
"This will permanently revoke the token. Any integrations using it will stop "
"working immediately."
msgstr ""
"Spowoduje to trwałe unieważnienie tokena. Wszystkie integracje, które go "
"używają, natychmiast przestaną działać."

#: admin/src/views/ProView.vue
msgid ""
"This will remove the license from this site and free up a slot. You can "
"reactivate at any time."
msgstr ""
"Spowoduje to usunięcie licencji z tej witryny i zwolnienie miejsca. Możesz "
"ją ponownie aktywować w dowolnym momencie."

#: admin/src/components/ui/DateTimePicker.vue
msgid "Time"
msgstr "Godzina"

#: admin/src/views/ActivityView.vue
msgid "Timestamp"
msgstr "Znacznik czasu"

#: admin/src/views/ActivityView.vue
msgid "To date"
msgstr "Do daty"

#: admin/src/views/LogsList.vue admin/src/views/QueueView.vue
msgid "To date & time"
msgstr "Do daty i godziny"

#: admin/src/components/HealthStatusBar.vue
msgid "Today"
msgstr "Dzisiaj"

#: admin/src/components/AiStepControls.vue admin/src/views/ActivityView.vue
msgid "Token"
msgstr "Token"

#: admin/src/components/TokenCreatedDialog.vue
msgid "Token created"
msgstr "Token utworzony"

#: admin/src/components/CreateTokenDialog.vue
msgid "Token name"
msgstr "Nazwa tokenu"

#: src/Api/ApiTokensController.php:138 admin/src/components/CreateTokenDialog.vue
msgid "Token name is required."
msgstr "Nazwa tokena jest wymagana."

#: admin/src/components/ChangeExpiryDialog.vue admin/src/components/RotateTokenDialog.vue
msgid "Token will never expire."
msgstr "Token nigdy nie wygaśnie."

#: admin/src/views/ActivityView.vue
msgid "Token: %s"
msgstr "Token: %s"

#: admin/src/views/ApiTokensView.vue
msgid ""
"Tokens allow external systems to access the REST API without a browser "
"session. Token management is always admin-only regardless of scope."
msgstr ""
"Tokeny pozwalają systemom zewnętrznym uzyskać dostęp do REST API bez sesji "
"przeglądarki. Zarządzanie tokenami jest zawsze dostępne tylko dla "
"administratora, niezależnie od zakresu."

#: src/Services/Builds/PublishBuildClient.php:171
msgid "Too many builds published from this license — wait a moment and try again."
msgstr ""
"Zbyt wiele buildów opublikowanych z tej licencji — odczekaj chwilę i "
"spróbuj ponownie."

#: src/Abilities/TestAbilities.php:93
msgid "Too many probe calls — try again in a minute."
msgstr "Zbyt wiele wywołań sondowania — spróbuj ponownie za minutę."

#: src/Services/Ai/TrialClient.php:188
msgid "Too many trial requests from this network. Please try again in an hour."
msgstr "Zbyt wiele żądań okresu próbnego z tej sieci. Spróbuj ponownie za godzinę."

#: admin/src/views/QueueView.vue
msgid "Total"
msgstr "Łącznie"

#: admin/src/views/LogsList.vue admin/src/views/WebhookLogs.vue
msgid "Total (7 days)"
msgstr "Łącznie (7 dni)"

#: admin/src/components/HealthStatusBar.vue
msgid "Total (7d)"
msgstr "Łącznie (7 dni)"

#: admin/src/views/SettingsView.vue
msgid "Total Logs"
msgstr "Łączna liczba logów"

#: admin/src/components/WebhookForm.vue
msgid ""
"Total delivery attempts for this webhook, including the first try. "
"Overrides the global setting. Once reached the job is permanently failed."
msgstr ""
"Łączna liczba prób dostarczenia dla tego webhooka, wliczając pierwszą "
"próbę. Zastępuje ustawienie globalne. Po osiągnięciu zadanie jest trwale "
"nieudane."

#: admin/src/views/SettingsView.vue
msgid ""
"Total delivery attempts per webhook (including the first try). Leave empty "
"for the plugin default of 5."
msgstr ""
"Łączna liczba prób dostarczenia na webhook (wliczając pierwszą próbę). "
"Pozostaw puste, aby użyć domyślnej wartości wtyczki 5."

#: admin/src/views/SettingsView.vue
msgid ""
"Total delivery attempts per webhook, including the first try. Once this "
"number is reached the job is permanently failed."
msgstr ""
"Łączna liczba prób dostarczenia na webhook, wliczając pierwszą próbę. Po "
"osiągnięciu tej liczby zadanie zostaje trwale oznaczone jako nieudane."

#: admin/src/components/HealthStatusBar.vue
msgid "Total sent"
msgstr "Łącznie wysłane"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Transformed"
msgstr "Przekształcony"

#: admin/src/components/LogsTable.vue
msgid "Transformed Payload (Sent)"
msgstr "Przekształcone dane (wysłane)"

#: admin/src/components/LogsTable.vue admin/src/components/TestWebhookDrawer.vue
msgid "Trigger"
msgstr "Wyzwalacz"

#: src/Api/WebhooksController.php:120
msgid "Trigger name to use for the test."
msgstr "Nazwa wyzwalacza używana do testu."

#: src/Api/SchemasController.php:68
#: src/Api/SchemasController.php:85
#: src/Api/SchemasController.php:114
#: src/Api/SchemasController.php:135
msgid "Trigger name."
msgstr "Nazwa wyzwalacza."

#: admin/src/components/MappingEditor.vue
msgid "Trigger this event to capture an example payload for mapping."
msgstr "Uruchom to zdarzenie, aby przechwycić przykładowe dane do mapowania."

#: admin/src/components/ChainPicker.vue
msgid "Trigger this webhook when the following webhooks complete"
msgstr "Uruchom ten webhook, gdy następujące webhooki zakończą działanie"

#: admin/src/views/WebhooksList.vue
msgid "Trigger webhooks on WordPress events"
msgstr "Wyzwalaj webhooki przy zdarzeniach w WordPressie"

#: admin/src/components/TestWebhookDrawer.vue admin/src/views/QueueView.vue
msgid "Trigger:"
msgstr "Wyzwalacz:"

#: admin/src/components/WebhookForm.vue
msgid "Triggers"
msgstr "Wyzwalacze"

#: admin/src/views/VaultView.vue
msgid "Type"
msgstr "Typ"

#: admin/src/components/WebhookForm.vue
msgid "URL Query Parameters"
msgstr "Parametry zapytania URL"

#: admin/src/components/WebhookForm.vue
msgid "URL must be HTTP or HTTPS"
msgstr "Adres URL musi być HTTP lub HTTPS"

#: src/Api/WebhookSchema.php:44
msgid "URL to send the webhook to."
msgstr "Adres URL, na który wysłać webhook."

#: admin/src/views/QueueView.vue
msgid "URL:"
msgstr "URL:"

#: admin/src/views/WebhooksList.vue
msgid "Unchained"
msgstr "Bez łańcucha"

#: admin/src/components/BuiltWebhookActions.vue
msgid "Undo last change"
msgstr "Cofnij ostatnią zmianę"

#: src/Api/WebhookSchema.php:27
#: src/Api/WebhooksController.php:73
#: src/Api/WebhooksController.php:98
#: src/Api/WebhooksController.php:110
msgid "Unique identifier for the webhook."
msgstr "Unikalny identyfikator webhooka."

#: src/Api/AgentController.php:225
#: src/Api/AgentController.php:288
msgid "Unknown AI provider."
msgstr "Nieznany dostawca AI."

#: admin/src/views/QueueView.vue
msgid "Unknown Webhook"
msgstr "Nieznany webhook"

#: src/Abilities/AbilityRegistry.php:134
#. translators: %s: ability name
#, php-format
msgid "Unknown ability: %s"
msgstr "Nieznana umiejętność: %s"

#: src/Abilities/WriteAbilities.php:340
#. translators: 1: the rejected operator, 2: list of valid operators
#, php-format
msgid "Unknown condition operator \"%1$s\". Valid operators: %2$s."
msgstr "Nieznany operator warunku \"%1$s\". Prawidłowe operatory: %2$s."

#: admin/src/views/ExternalCronView.vue
msgid "Unknown error"
msgstr "Nieznany błąd"

#: admin/src/views/ProView.vue
msgid "Unlimited conditions and AND / OR groups"
msgstr "Nieograniczone warunki oraz grupy AND / OR"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Unsaved changes"
msgstr "Niezapisane zmiany"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Untitled"
msgstr "Bez tytułu"

#: admin/src/components/AiBuildsBar.vue
msgid "Untitled build"
msgstr "Projekt bez nazwy"

#: admin/src/components/PayloadGlueDrawer.vue
msgid "Update Snippet"
msgstr "Zaktualizuj fragment"

#: admin/src/components/AiStepControls.vue
msgid "Update URL & retry"
msgstr "Zaktualizuj URL i ponów"

#: src/Services/ProCompatibility.php:63
#. translators: %s: required Webhook Actions Pro version, e.g. 1.9.0.
#, php-format
msgid ""
"Update Webhook Actions Pro to %s. Code Glue, dynamic URL templates and "
"retry settings now ship in the free Webhook Actions plugin — until Pro is "
"updated it keeps running its own copies, so nothing breaks, but you are on "
"the old versions of those features."
msgstr ""
"Zaktualizuj Webhook Actions Pro do wersji %s. Code Glue, dynamiczne "
"szablony URL i ustawienia ponowień są teraz w darmowej wtyczce Webhook "
"Actions — dopóki Pro nie zostanie zaktualizowane, używa własnych kopii, "
"więc nic się nie psuje, ale korzystasz ze starych wersji tych funkcji."

#: src/Abilities/GlueAbilities.php:89
msgid "Update a Code Glue snippet"
msgstr "Zaktualizuj snippet Code Glue"

#: src/Abilities/AbilityCatalog.php:142
msgid "Update a webhook"
msgstr "Zaktualizuj webhook"

#: src/Abilities/GlueAbilities.php:90
msgid ""
"Update an existing Code Glue snippet's name, code or tags. If the snippet "
"is already assigned and enabled on a webhook, the new code runs on the next "
"dispatch — re-test with preview_snippet after editing."
msgstr ""
"Zaktualizuj nazwę, kod lub tagi istniejącego snippetu Code Glue. Jeśli "
"snippet jest już przypisany i włączony na webhooku, nowy kod wykona się "
"przy następnej wysyłce — po edycji przetestuj ponownie przez "
"preview_snippet."

#: src/Abilities/AbilityCatalog.php:143
msgid ""
"Update an existing webhook (endpoint, method, triggers, headers, "
"credential)."
msgstr ""
"Zaktualizuj istniejący webhook (punkt końcowy, metoda, wyzwalacze, "
"nagłówki, uwierzytelnienie)."

#: admin/src/views/VaultView.vue
msgid ""
"Update this credential. Leave secret fields blank to keep the existing "
"value."
msgstr ""
"Zaktualizuj to uwierzytelnienie. Pozostaw pola sekretów puste, aby zachować "
"istniejącą wartość."

#: admin/src/components/ChangeExpiryDialog.vue
msgid ""
"Update when this token expires. Removing the expiry makes it valid "
"indefinitely."
msgstr ""
"Zaktualizuj, kiedy ten token wygasa. Usunięcie wygaśnięcia sprawia, że jest "
"ważny bezterminowo."

#: admin/src/components/ui/UpgradeBadge.vue
msgid "Upgrade"
msgstr "Ulepsz"

#: admin/src/views/ProView.vue
msgid "Upgrade to Pro"
msgstr "Przejdź na Pro"

#: admin/src/components/AiProviderSettings.vue
msgid "Use"
msgstr "Użyj"

#: admin/src/components/TokenCreatedDialog.vue
msgid "Use %1$sX-FSWA-Token: %2$s%3$s in your requests."
msgstr "Użyj %1$sX-FSWA-Token: %2$s%3$s w swoich żądaniach."

#: admin/src/views/AiBuilderView.vue
msgid ""
"Use a provider configured in WordPress, or add your own API keys. Keys are "
"encrypted in your Credentials Vault and never returned over the API."
msgstr ""
"Użyj dostawcy skonfigurowanego w WordPressie lub dodaj własne klucze API. "
"Klucze są szyfrowane w Sejfie uwierzytelnień i nigdy nie są zwracane przez "
"API."

#: admin/src/components/ImportDialog.vue
msgid "Use an existing vault credential"
msgstr "Użyj istniejącego uwierzytelnienia z sejfu"

#: admin/src/components/AiStepControls.vue
msgid "Use credential & continue"
msgstr "Użyj uwierzytelnienia i kontynuuj"

#: admin/src/components/AiStepControls.vue
msgid "Use existing"
msgstr "Użyj istniejącego"

#: admin/src/components/WebhookForm.vue
msgid "Use global setting"
msgstr "Użyj ustawienia globalnego"

#: admin/src/components/WebhookForm.vue
msgid "Use other Webhooks as triggers"
msgstr "Użyj innych webhooków jako wyzwalaczy"

#: admin/src/views/ActivityView.vue
msgid "User #%s"
msgstr "Użytkownik #%s"

#: admin/src/views/ActivityView.vue
msgid "User ID"
msgstr "ID użytkownika"

#: admin/src/views/ActivityView.vue
msgid "User prompt"
msgstr "Polecenie użytkownika"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "User trigger"
msgstr "Wyzwalacz użytkownika"

#: admin/src/components/AiStepControls.vue admin/src/components/ImportDialog.vue admin/src/views/VaultView.vue
msgid "Username"
msgstr "Nazwa użytkownika"

#: src/Api/TriggersController.php:141
msgid "Users"
msgstr "Użytkownicy"

#: admin/src/components/WebhookForm.vue
msgid ""
"Value for the Authorization header (e.g., \"Bearer your_token_goes_here\" "
"or \"Basic your_encoded_base64(username:password)\"). For better security, "
"store secrets in the"
msgstr ""
"Wartość nagłówka Authorization (np. „Bearer your_token_goes_here” lub "
"„Basic your_encoded_base64(username:password)”). Dla lepszego "
"bezpieczeństwa przechowuj sekrety w"

#: admin/src/components/WebhookForm.vue
msgid ""
"Values support dot-notation paths into the outgoing payload (e.g. "
"%1$sevent.id%2$s) or static strings."
msgstr ""
"Wartości obsługują ścieżki w notacji kropkowej do wychodzących danych (np. "
"%1$sevent.id%2$s) lub statyczny tekst."

#: admin/src/components/TriggerSchemaPanel.vue
msgid "View"
msgstr "Zobacz"

#: admin/src/components/TestWebhookDrawer.vue
msgid "View full log"
msgstr "Zobacz pełny log"

#: admin/src/components/TestWebhookDrawer.vue
msgid "View in Logs"
msgstr "Zobacz w logach"

#: admin/src/components/WebhookCardContent.vue
msgid "View logs"
msgstr "Zobacz logi"

#: admin/src/views/LogsList.vue
msgid "View webhook delivery logs"
msgstr "Przeglądaj logi dostarczania webhooków"

#: admin/src/components/CreateTokenDialog.vue
msgid "View webhooks, logs, queue, health, triggers, schemas"
msgstr "Przeglądanie webhooków, logów, kolejki, kondycji, wyzwalaczy, schematów"

#: admin/src/components/AiProviderSettings.vue admin/src/views/AiBuilderView.vue
msgid "WP Webhooks AI"
msgstr "WP Webhooks AI"

#: admin/src/components/AiProviderSettings.vue
msgid "WP Webhooks AI (included)"
msgstr "WP Webhooks AI (w pakiecie)"

#: admin/src/components/AiProviderSettings.vue
msgid ""
"WP Webhooks AI is included with your Pro license — no API keys needed. Your "
"own keys and WordPress connectors remain available."
msgstr ""
"WP Webhooks AI jest częścią Twojej licencji Pro — bez kluczy API. Własne "
"klucze i konektory WordPressa pozostają dostępne."

#: admin/src/views/AiBuilderView.vue
msgid "WP Webhooks API Docs Library"
msgstr "WP Webhooks API Docs Library"

#: admin/src/components/AiPlanStepper.vue admin/src/components/AiStepPanel.vue admin/src/components/TriggerSchemaPanel.vue
msgid "WP Webhooks Payload Library"
msgstr "WP Webhooks Payload Library"

#: admin/src/views/ExternalCronView.vue admin/src/views/SettingsView.vue
msgid "WP-Cron"
msgstr "WP-Cron"

#: admin/src/views/SettingsView.vue
msgid "WP-Cron Fallback"
msgstr "Rozwiązanie awaryjne WP-Cron"

#: admin/src/components/WebhookForm.vue admin/src/views/SettingsView.vue
msgid "Wait %s"
msgstr "Czekaj %s"

#: admin/src/views/SettingsView.vue
msgid "Wait before each retry"
msgstr "Czas oczekiwania przed każdym ponowieniem"

#: admin/src/components/AiStepControls.vue
msgid ""
"Waiting for an example payload. Nothing has fired this trigger yet, so "
"there are no real field names to map against."
msgstr ""
"Oczekiwanie na przykładowy payload. Nic jeszcze nie wywołało tego "
"wyzwalacza, więc nie ma prawdziwych nazw pól do zmapowania."

#: admin/src/components/AiStepPanel.vue
msgid "Waiting for earlier steps…"
msgstr "Oczekiwanie na wcześniejsze kroki…"

#: admin/src/components/TriggerSchemaPanel.vue
msgid "Waiting for trigger to capture example payload..."
msgstr "Oczekiwanie na wyzwalacz, aby przechwycić przykładowe dane..."

#: admin/src/components/LogsTable.vue admin/src/components/ShareBuildDialog.vue
msgid "Webhook"
msgstr "Webhook"

#: admin/src/views/WebhookLogs.vue
msgid "Webhook #%s"
msgstr "Webhook #%s"

#: src/Abilities/AbilityRegistrar.php:92
#: src/Controllers/AdminController.php:42
#: src/Controllers/AdminController.php:43
#: src/Controllers/AdminController.php:50
#: src/Controllers/AdminController.php:51
msgid "Webhook Actions"
msgstr ""

#: flowsystems-webhook-actions.php
#. Plugin Name of the plugin
msgid "Webhook Actions - build automations and integrations with AI help"
msgstr "Webhook Actions — buduj automatyzacje i integracje z pomocą AI"

#: src/Controllers/AdminController.php:250
msgid ""
"Webhook Actions by Flow Systems: Your webhooks have been migrated to the "
"new database format."
msgstr ""
"Webhook Actions by Flow Systems: Twoje webhooki zostały przeniesione do "
"nowego formatu bazy danych."

#: src/Api/SchemasController.php:47
#: src/Api/SchemasController.php:63
#: src/Api/SchemasController.php:80
#: src/Api/SchemasController.php:109
#: src/Api/SchemasController.php:130
msgid "Webhook ID."
msgstr "Identyfikator webhooka."

#: admin/src/components/WebhookForm.vue
msgid "Webhook auth"
msgstr "Uwierzytelnianie webhooka"

#: admin/src/views/SettingsView.vue
msgid "Webhook delivery logs older than this will be automatically deleted."
msgstr ""
"Logi dostarczania webhooków starsze niż ta wartość będą automatycznie "
"usuwane."

#: src/Api/WebhooksController.php:549
msgid "Webhook has no triggers configured."
msgstr "Webhook nie ma skonfigurowanych wyzwalaczy."

#: admin/src/components/BuiltWebhookActions.vue
msgid "Webhook is live."
msgstr "Webhook działa."

#: src/Api/WebhooksController.php:236
msgid "Webhook name is required."
msgstr "Nazwa webhooka jest wymagana."

#: src/Abilities/GlueAbilities.php:350
#: src/Api/LogsController.php:387
#: src/Api/SchemasController.php:172
#: src/Api/SchemasController.php:233
#: src/Api/SchemasController.php:279
#: src/Api/SchemasController.php:361
#: src/Api/SchemasController.php:393
#: src/Api/WebhooksController.php:201
#: src/Api/WebhooksController.php:336
#: src/Api/WebhooksController.php:448
#: src/Api/WebhooksController.php:500
#: src/Api/WebhooksController.php:540
msgid "Webhook not found."
msgstr "Nie znaleziono webhooka."

#: admin/src/App.vue admin/src/components/ExportDialog.vue admin/src/views/ActivityView.vue admin/src/views/WebhooksList.vue
msgid "Webhooks"
msgstr "Webhooki"

#: admin/src/components/BuildPublishFields.vue
msgid "Website"
msgstr "Strona internetowa"

#: admin/src/components/ChainPicker.vue admin/src/views/WebhooksList.vue
msgid "What does this chain automate? Markdown supported."
msgstr "Co automatyzuje ten łańcuch? Obsługiwany Markdown."

#: admin/src/components/ShareBuildDialog.vue
msgid "What does this do, and what does someone need before importing it?"
msgstr "Co to robi i czego potrzebuje osoba, zanim to zaimportuje?"

#: admin/src/components/WebhookForm.vue
msgid "What does this webhook do? Markdown supported."
msgstr "Co robi ten webhook? Obsługiwany Markdown."

#: admin/src/components/ShareBuildDialog.vue
msgid "What this build contains"
msgstr "Co zawiera ta konfiguracja"

#: admin/src/views/AiBuilderView.vue
msgid "When a Contact Form 7 form is submitted, send it as JSON to my n8n webhook"
msgstr ""
"Gdy formularz Contact Form 7 zostanie wysłany, prześlij go jako JSON do "
"mojego webhooka n8n"

#: admin/src/views/AiBuilderView.vue
msgid "When a new user registers, add them to my CRM and tag them by role"
msgstr ""
"Gdy zarejestruje się nowy użytkownik, dodaj go do mojego CRM i otaguj "
"według roli"

#: admin/src/views/AiBuilderView.vue
msgid "When a post is published, notify my Slack channel with the title and link"
msgstr "Gdy wpis zostanie opublikowany, powiadom mój kanał Slack tytułem i linkiem"

#: admin/src/views/SettingsView.vue
msgid "When enabled, logs are exported to JSON files before being deleted."
msgstr "Gdy włączone, logi są eksportowane do plików JSON przed usunięciem."

#: admin/src/components/WebhookForm.vue
msgid ""
"When enabled, this webhook fires inline during the WordPress request that "
"triggers it, bypassing the queue. May slow down your site if the endpoint "
"is slow."
msgstr ""
"Gdy włączone, ten webhook uruchamia się w trakcie żądania WordPress, które "
"go wyzwala, pomijając kolejkę. Może spowolnić Twoją witrynę, jeśli punkt "
"końcowy jest wolny."

#: admin/src/views/QueueView.vue
msgid "When webhooks are triggered, jobs will appear here for processing."
msgstr "Gdy webhooki zostaną wyzwolone, zadania pojawią się tutaj do przetworzenia."

#: admin/src/components/BuildPublishFields.vue
msgid "Where does this belong?"
msgstr "Gdzie to pasuje?"

#: src/Api/WebhooksController.php:114
msgid "Where to source the test payload from."
msgstr "Skąd pozyskać dane testowe."

#: src/Api/WebhookSchema.php:98
msgid "Whether the webhook executes synchronously (blocking, bypasses queue)."
msgstr "Czy webhook wykonuje się synchronicznie (blokująco, z pominięciem kolejki)."

#: src/Api/WebhookSchema.php:92
msgid "Whether the webhook is enabled."
msgstr "Czy webhook jest włączony."

#: src/Api/SchemasController.php:94
msgid "Whether to include user data."
msgstr "Czy dołączyć dane użytkownika."

#: admin/src/components/LogsTable.vue
msgid "Will Retry"
msgstr "Ponowi próbę"

#: src/Api/TriggersController.php:149
msgid "WooCommerce"
msgstr ""

#: src/Api/TriggersController.php:140
msgid "WordPress"
msgstr ""

#: admin/src/components/WebhookForm.vue
msgid "WordPress actions that will trigger this webhook"
msgstr "Akcje WordPress, które wyzwolą ten webhook"

#: admin/src/components/AiProviderSettings.vue
msgid "WordPress connectors"
msgstr "Łączniki WordPressa"

#: admin/src/views/VaultView.vue
msgid "WordPress username or API user"
msgstr "Nazwa użytkownika WordPress lub użytkownik API"

#: admin/src/components/AiStepPanel.vue
msgid "Working…"
msgstr "Pracuję…"

#: admin/src/components/MarkdownField.vue
msgid "Write"
msgstr "Pisz"

#: admin/src/components/TestWebhookDrawer.vue
msgid "Write your own JSON payload"
msgstr "Napisz własne dane JSON"

#: src/Services/GluePermissions.php:198
#. translators: %s: WordPress capability name, e.g. edit_plugins.
#, php-format
msgid "Writing Code Glue needs the \"%s\" capability."
msgstr "Zapis Code Glue wymaga uprawnienia „%s”."

#: admin/src/views/QueueView.vue
msgid "X-Webhook-Id:"
msgstr "X-Webhook-Id:"

#: admin/src/components/LogsTable.vue
msgid "Yes"
msgstr "Tak"

#: src/Api/RetrySettingsController.php:49
msgid "You do not have permission."
msgstr "Nie masz uprawnień."

#: src/Api/WebhooksController.php:168
msgid "You don't have permissions to see it."
msgstr "Nie masz uprawnień, aby to zobaczyć."

#: src/Services/Builds/PublishBuildClient.php:127
msgid "You have already published this build."
msgstr "Ten build został już przez Ciebie opublikowany."

#: admin/src/components/TestWebhookDrawer.vue
msgid ""
"You have unsaved changes. The test will run against the %1$ssaved%2$s "
"version of this webhook."
msgstr ""
"Masz niezapisane zmiany. Test zostanie uruchomiony na %1$szapisanej%2$s "
"wersji tego webhooka."

#: admin/src/views/ExternalCronView.vue
msgid ""
"You might want to whitelist the External Cron IP for your WAF or server "
"security: %1$s72.62.157.193%2$s"
msgstr ""
"Możesz dodać IP zewnętrznego crona do białej listy w swoim WAF lub "
"zabezpieczeniach serwera: %1$s72.62.157.193%2$s"

#: admin/src/components/AiProviderSettings.vue
msgid "Your WordPress AI connectors are no longer available."
msgstr "Twoje łączniki AI WordPressa nie są już dostępne."

#: admin/src/components/BuildPublishProgress.vue
msgid "Your build is published."
msgstr "Twoja konfiguracja została opublikowana."

#: admin/src/components/BuildPublishProgress.vue
msgid "Your build was received."
msgstr "Otrzymaliśmy Twoją konfigurację."

#: admin/src/components/AiBuildsBar.vue
msgid "Your builds"
msgstr "Twoje projekty"

#: admin/src/views/AiBuilderView.vue
msgid "Your free trial is used up."
msgstr "Twój darmowy okres próbny został wykorzystany."

#: admin/src/components/AiProviderSettings.vue
msgid ""
"Your free trial is used up. Connect your own provider below — Google AI "
"Studio gives you a free Gemini key with no credit card — or get Pro credits."
msgstr ""
"Twój darmowy okres próbny został wykorzystany. Podłącz poniżej własnego "
"dostawcę — Google AI Studio daje darmowy klucz Gemini bez karty kredytowej "
"— albo kup kredyty Pro."

#: admin/src/views/AiBuilderView.vue
msgid ""
"Your free trial starts with %s credits — nothing to set up, no card, no "
"account."
msgstr ""
"Twój darmowy okres próbny zaczyna się od %s kredytów — nic do "
"konfigurowania, bez karty, bez konta."

#: src/Services/Builds/PublishBuildClient.php:163
msgid "Your license does not allow publishing from this site."
msgstr "Twoja licencja nie pozwala publikować z tej witryny."

#: admin/src/views/ProView.vue
msgid "Your license is active on this site."
msgstr "Twoja licencja jest aktywna na tej witrynie."

#: admin/src/components/BuildPublishFields.vue
msgid "Your links appear on the build page. They are published as nofollow."
msgstr ""
"Twoje linki pojawią się na stronie konfiguracji. Są publikowane jako "
"nofollow."

#: admin/src/components/BuildPublishFields.vue
msgid "Your name"
msgstr "Twoje imię i nazwisko"

#: admin/src/views/AiBuilderView.vue
msgid "Your previous builds, read-only. Connect a provider to continue building."
msgstr ""
"Twoje poprzednie buildy, tylko do odczytu. Podłącz dostawcę, aby dalej "
"budować."

#: src/Services/Ai/AgentOrchestrator.php:389
#. translators: 1: selected provider/model, 2: fallback provider/model, 3: error reason
#, php-format
msgid ""
"Your selected model %1$s couldn't respond, so this reply came from %2$s "
"instead. (%3$s) Pick a different model with Change model."
msgstr ""
"Wybrany model %1$s nie mógł odpowiedzieć, więc ta odpowiedź pochodzi z "
"%2$s. (%3$s) Wybierz inny model opcją „Zmień model”."

#: admin/src/components/ConditionsEditor.vue
msgid "array contains"
msgstr "tablica zawiera"

#: admin/src/components/ConditionsEditor.vue admin/src/components/MappingEditor.vue
msgid "auto"
msgstr "auto"

#: admin/src/views/AiBuilderView.vue
msgid "auto-researched"
msgstr "zbadane automatycznie"

#: src/Api/RetrySettingsController.php:119
msgid "backoff_base_delay must be between 1 and 86400 seconds."
msgstr "backoff_base_delay musi mieścić się w przedziale od 1 do 86400 sekund."

#: src/Api/RetrySettingsController.php:139
msgid "backoff_max_delay must be between 1 and 86400 seconds."
msgstr "backoff_max_delay musi mieścić się w przedziale od 1 do 86400 sekund."

#: src/Api/RetrySettingsController.php:99
msgid "backoff_strategy must be exponential, linear, or fixed."
msgstr "backoff_strategy musi być exponential, linear lub fixed."

#: admin/src/components/ConditionsEditor.vue
msgid "be skipped"
msgstr "pominięty"

#: admin/src/components/ConditionsEditor.vue admin/src/components/MappingEditor.vue
msgid "bool"
msgstr "bool"

#: src/Abilities/WriteAbilities.php:225
msgid "chain_id, source_webhook_id and target_webhook_id are required."
msgstr "chain_id, source_webhook_id i target_webhook_id są wymagane."

#: src/Abilities/WriteAbilities.php:283
msgid "conditions must be an object {enabled, type, rules: [...]}."
msgstr "conditions musi być obiektem {enabled, type, rules: [...]}."

#: src/Abilities/WriteAbilities.php:292
msgid "conditions.rules must be an array of rule objects."
msgstr "conditions.rules musi być tablicą obiektów reguł."

#: admin/src/components/ConditionsEditor.vue
msgid "contains"
msgstr "zawiera"

#: src/Services/Export/BuildSchemaValidator.php:98
msgid "contains no webhooks."
msgstr "nie zawiera żadnych webhooków."

#: admin/src/components/ConditionsEditor.vue
msgid "dispatch"
msgstr "wysłany"

#: admin/src/components/ConditionsEditor.vue
msgid "does not contain"
msgstr "nie zawiera"

#: admin/src/components/ConditionsEditor.vue
msgid "does not equal"
msgstr "nie równa się"

#: admin/src/components/CreateTokenDialog.vue
msgid "e.g. CI pipeline, n8n integration"
msgstr "np. potok CI, integracja n8n"

#: admin/src/components/WebhookForm.vue
msgid "e.g. HubSpot PAT"
msgstr "np. HubSpot PAT"

#: admin/src/views/VaultView.vue
msgid "e.g. HubSpot PAT, Stripe key"
msgstr "np. PAT HubSpot, klucz Stripe"

#: admin/src/components/ChainPicker.vue
msgid "e.g. Order to HubSpot"
msgstr "np. Zamówienie do HubSpot"

#: admin/src/components/ConditionsEditor.vue
msgid "empty"
msgstr "puste"

#: admin/src/components/ConditionsEditor.vue
msgid "equals"
msgstr "równa się"

#: src/Services/Export/BuildSchemaValidator.php:387
#. translators: %d: max length
#, php-format
msgid "exceeds the maximum length of %d bytes."
msgstr "przekracza maksymalną długość %d bajtów."

#: admin/src/components/MappingEditor.vue
msgid "excluded via parent"
msgstr "wykluczone przez element nadrzędny"

#: admin/src/components/ConditionsEditor.vue
msgid "excludes"
msgstr "wyklucza"

#: src/Api/RetrySettingsController.php:80
msgid "global_max_attempts must be between 1 and 100."
msgstr "global_max_attempts musi mieścić się w przedziale od 1 do 100."

#: admin/src/components/ConditionsEditor.vue
msgid "greater than"
msgstr "większe niż"

#: admin/src/components/ConditionsEditor.vue
msgid "has item"
msgstr "zawiera element"

#: src/Services/Export/BuildSchemaValidator.php:377
#. translators: %s: comma-separated key names
#, php-format
msgid "has unexpected key(s): %s."
msgstr "zawiera nieoczekiwane klucze: %s."

#: admin/src/components/ConditionsEditor.vue
msgid "has value"
msgstr "zawiera wartość"

#: flowsystems-webhook-actions.php
#. Author URI of the plugin
msgid "https://flowsystems.pl"
msgstr ""

#: flowsystems-webhook-actions.php
#. Plugin URI of the plugin
msgid "https://wpwebhooks.org/wordpress-webhook-plugin"
msgstr ""

#: admin/src/components/AiStepControls.vue
msgid "https://your-endpoint.example/webhook"
msgstr "https://twoj-endpoint.example/webhook"

#: admin/src/components/WebhookForm.vue
msgid "instead."
msgstr "zamiast tego."

#: src/Services/Export/BuildSchemaValidator.php:70
#. translators: 1: found version, 2: supported version
#, php-format
msgid "is %1$d; this plugin imports version %2$d builds."
msgstr "wynosi %1$d; ta wtyczka importuje konfiguracje w wersji %2$d."

#: admin/src/components/ConditionsEditor.vue
msgid "is empty"
msgstr "jest puste"

#: admin/src/components/ConditionsEditor.vue
msgid "is false"
msgstr "jest fałszem"

#: src/Services/Export/BuildSchemaValidator.php:367
#. translators: %s: key name
#, php-format
msgid "is missing required key \"%s\"."
msgstr "brakuje wymaganego klucza „%s”."

#: admin/src/components/ConditionsEditor.vue
msgid "is not empty"
msgstr "nie jest puste"

#: src/Services/Export/BuildSchemaValidator.php:63
msgid "is required and must be an integer."
msgstr "jest wymagane i musi być liczbą całkowitą."

#: src/Services/Export/BuildSchemaValidator.php:228
msgid "is required when mode is \"vault\"."
msgstr "jest wymagane, gdy tryb to „vault”."

#: admin/src/components/ConditionsEditor.vue
msgid "is true"
msgstr "jest prawdą"

#: admin/src/components/ConditionsEditor.vue
msgid "less than"
msgstr "mniejsze niż"

#: admin/src/components/AiPlanStepper.vue
msgid "library"
msgstr "biblioteka"

#: admin/src/components/MappingEditor.vue
msgid "mapped"
msgstr "zmapowane"

#: src/Services/Export/BuildSchemaValidator.php:351
msgid "may only contain letters, numbers, hyphens and underscores."
msgstr "może zawierać wyłącznie litery, cyfry, myślniki i podkreślenia."

#: src/Services/Export/BuildSchemaValidator.php:394
msgid "must be a boolean."
msgstr "musi być wartością logiczną."

#: src/Services/Export/BuildSchemaValidator.php:81
#: src/Services/Export/BuildSchemaValidator.php:231
msgid "must be a string or null."
msgstr "musi być tekstem albo null."

#: src/Services/Export/BuildSchemaValidator.php:78
#: src/Services/Export/BuildSchemaValidator.php:132
#: src/Services/Export/BuildSchemaValidator.php:149
#: src/Services/Export/BuildSchemaValidator.php:302
#: src/Services/Export/BuildSchemaValidator.php:384
msgid "must be a string."
msgstr "musi być tekstem."

#: src/Services/Export/BuildSchemaValidator.php:346
msgid "must be a {key, value} object."
msgstr "musi być obiektem {key, value}."

#: src/Services/Export/BuildSchemaValidator.php:300
msgid "must be an array of strings."
msgstr "musi być tablicą tekstów."

#: src/Services/Export/BuildSchemaValidator.php:343
msgid "must be an array of {key, value} pairs."
msgstr "musi być tablicą par {key, value}."

#: src/Services/Export/BuildSchemaValidator.php:87
#: src/Services/Export/BuildSchemaValidator.php:96
#: src/Services/Export/BuildSchemaValidator.php:109
#: src/Services/Export/BuildSchemaValidator.php:141
#: src/Services/Export/BuildSchemaValidator.php:207
#: src/Services/Export/BuildSchemaValidator.php:319
msgid "must be an array."
msgstr "musi być tablicą."

#: src/Services/Export/BuildSchemaValidator.php:191
msgid "must be an http:// or https:// URL."
msgstr "musi być adresem http:// lub https://."

#: src/Services/Export/BuildSchemaValidator.php:60
#: src/Services/Export/BuildSchemaValidator.php:128
#: src/Services/Export/BuildSchemaValidator.php:145
#: src/Services/Export/BuildSchemaValidator.php:162
#: src/Services/Export/BuildSchemaValidator.php:179
#: src/Services/Export/BuildSchemaValidator.php:220
#: src/Services/Export/BuildSchemaValidator.php:240
#: src/Services/Export/BuildSchemaValidator.php:264
#: src/Services/Export/BuildSchemaValidator.php:278
#: src/Services/Export/BuildSchemaValidator.php:293
#: src/Services/Export/BuildSchemaValidator.php:313
#: src/Services/Export/BuildSchemaValidator.php:322
msgid "must be an object."
msgstr "musi być obiektem."

#: src/Services/Export/BuildSchemaValidator.php:400
#. translators: %s: comma-separated allowed values
#, php-format
msgid "must be one of: %s."
msgstr "musi być jedną z wartości: %s."

#: src/Services/Export/BuildSchemaValidator.php:385
msgid "must not be empty."
msgstr "nie może być puste."

#: src/Services/Export/BuildSchemaValidator.php:355
msgid "must not contain line breaks."
msgstr "nie może zawierać znaków nowej linii."

#: src/Abilities/GlueAbilities.php:220
msgid "name and code are required."
msgstr "name i code są wymagane."

#: src/Abilities/WriteAbilities.php:54
msgid "name and endpoint_url are required."
msgstr "name i endpoint_url są wymagane."

#: admin/src/components/ConditionsEditor.vue
msgid "no"
msgstr "nie"

#: admin/src/views/WebhooksList.vue
msgid "no remaining triggers"
msgstr "brak pozostałych wyzwalaczy"

#: admin/src/components/ConditionsEditor.vue
msgid "not empty"
msgstr "niepuste"

#: admin/src/components/ConditionsEditor.vue
msgid "not equals"
msgstr "nie równa się"

#: admin/src/components/ConditionsEditor.vue admin/src/components/MappingEditor.vue
msgid "number"
msgstr "liczba"

#: admin/src/components/ConditionsEditor.vue
msgid "object contains"
msgstr "obiekt zawiera"

#: admin/src/components/AiStepPanel.vue
msgid "of"
msgstr "z"

#: admin/src/components/LogsTable.vue
msgid "perm. failed"
msgstr "trwale nieudany"

#: admin/src/components/ConditionsEditor.vue
msgid "property name (optional)"
msgstr "nazwa właściwości (opcjonalnie)"

#: src/Services/Ai/AgentOrchestrator.php:392
msgid "provider unavailable"
msgstr "dostawca niedostępny"

#: src/Services/Export/BuildSchemaValidator.php:229
msgid "references a credential that is not listed in credentials[]."
msgstr "odwołuje się do uwierzytelnienia, którego nie ma w credentials[]."

#: src/Services/Export/BuildSchemaValidator.php:328
msgid "references a webhook UUID not present in webhooks[]."
msgstr "odwołuje się do UUID webhooka, którego nie ma w webhooks[]."

#: admin/src/views/AiBuilderView.vue
msgid "resets in %1$dd %2$dh"
msgstr "odnowienie za %1$dd %2$dh"

#: admin/src/views/AiBuilderView.vue
msgid "resets in %1$dh %2$dm"
msgstr "odnowienie za %1$dh %2$dm"

#: admin/src/views/AiBuilderView.vue
msgid "resets soon"
msgstr "wkrótce odnowienie"

#: admin/src/components/AiPlanStepper.vue
msgid "reused"
msgstr "użyto ponownie"

#: src/Services/RestRouteInspector.php:40
msgid "route is required, e.g. \"/wp/v2/users\"."
msgstr "route jest wymagane, np. \"/wp/v2/users\"."

#: admin/src/components/ConditionsEditor.vue admin/src/components/MappingEditor.vue
msgid "string"
msgstr "tekst"

#: admin/src/components/ConditionsEditor.vue
msgid "stringify"
msgstr "stringify"

#: admin/src/views/AiBuilderView.vue
msgid "the step failed."
msgstr "krok nie powiódł się."

#: admin/src/components/WebhookForm.vue
msgid "then select it here."
msgstr "a następnie wybierz je tutaj."

#: src/Abilities/ReadAbilities.php:125
msgid "trigger is required."
msgstr "trigger jest wymagany."

#: admin/src/components/ConditionsEditor.vue
msgid "unknown"
msgstr "nieznane"

#: admin/src/components/ConditionsEditor.vue
msgid "value"
msgstr "wartość"

#: admin/src/views/AiBuilderView.vue
msgid "verified %s"
msgstr "zweryfikowano %s"

#: src/Abilities/WriteAbilities.php:157
msgid "webhook_id, trigger and conditions are required."
msgstr "webhook_id, trigger i conditions są wymagane."

#: src/Abilities/WriteAbilities.php:144
msgid "webhook_id, trigger and field_mapping are required."
msgstr "webhook_id, trigger i field_mapping są wymagane."

#: src/Abilities/GlueAbilities.php:347
msgid "webhook_id, trigger, stage (pre|post) and snippet_id are required."
msgstr "webhook_id, trigger, stage (pre|post) i snippet_id są wymagane."

#: admin/src/components/BuildPublishProgress.vue
msgid ""
"wpwebhooks.org rebuilds after every publish — about %d seconds left. The "
"address becomes a link the moment the page is live."
msgstr ""
"wpwebhooks.org przebudowuje się po każdej publikacji — pozostało około %d "
"s. Adres stanie się odnośnikiem w chwili, gdy strona będzie dostępna."

#: admin/src/components/ConditionsEditor.vue
msgid "yes"
msgstr "tak"

#: admin/src/views/VaultView.vue
msgid "· database key removed"
msgstr "· klucz z bazy danych usunięty"

#: admin/src/main.js
msgid "…"
msgstr "…"

#: src/Services/Ai/PlanExecutor.php:519
#. translators: %s: what was undone.
#, php-format
msgid "↩︎ Reverted: %s"
msgstr "↩︎ Cofnięto: %s"

#: admin/src/views/ProView.vue
msgid ""
"💡 Local installs (%1$slocalhost%2$s, %1$s*.local%2$s, %1$s*.test%2$s) "
"don't count toward your site limit."
msgstr ""
"💡 Instalacje lokalne (%1$slocalhost%2$s, %1$s*.local%2$s, %1$s*.test%2$s) "
"nie są wliczane do limitu witryn."

#: admin/src/views/ProView.vue
msgid ""
"💡 Staging and dev copies share their site's slot — %1$sstaging.%2$s, "
"%1$sdev.%2$s, %1$sstage.%2$s, %1$stest.%2$s, %1$sqa.%2$s and similar "
"subdomains of a licensed domain."
msgstr ""
"💡 Kopie staging i dev dzielą slot swojej witryny — %1$sstaging.%2$s, "
"%1$sdev.%2$s, %1$sstage.%2$s, %1$stest.%2$s, %1$sqa.%2$s i podobne "
"subdomeny licencjonowanej domeny."
