The node builder is gated to lg+ (its fixed side panels no longer overflow a phone); below lg it shows a 'works best on a larger screen' notice. Automation tabs scroll instead of cutting off.
412 lines
19 KiB
PHP
412 lines
19 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
return [
|
|
'mobile_notice' => 'Edytor automatyzacji działa najlepiej na większym ekranie. Otwórz go na komputerze, aby zbudować swój workflow.',
|
|
'title' => 'Automatyzacje',
|
|
'default_name' => 'Nowa automatyzacja',
|
|
|
|
'actions' => [
|
|
'new' => 'Nowa automatyzacja',
|
|
'edit' => 'Edytuj',
|
|
'save' => 'Zapisz',
|
|
'activate' => 'Aktywuj',
|
|
'pause' => 'Wstrzymaj',
|
|
'delete' => 'Usuń',
|
|
'retry' => 'Ponów',
|
|
'guide' => 'Dowiedz się, jak to działa',
|
|
],
|
|
|
|
'tabs' => [
|
|
'build' => 'Kreator',
|
|
'variables' => 'Zmienne',
|
|
'test' => 'Test',
|
|
],
|
|
|
|
'nav' => [
|
|
'workflow' => 'Przepływ pracy',
|
|
'invocations' => 'Wywołania',
|
|
'metrics' => 'Metryki',
|
|
'settings' => 'Ustawienia',
|
|
],
|
|
|
|
'settings' => [
|
|
'general' => 'Ogólne',
|
|
'general_description' => 'Zmień nazwę tej automatyzacji.',
|
|
'name_label' => 'Nazwa',
|
|
'name_saved' => 'Zmieniono nazwę automatyzacji.',
|
|
'status_title' => 'Status',
|
|
'status_description' => 'Aktywuj, aby ją uruchomić, lub wstrzymaj, aby zatrzymać.',
|
|
'activated_at' => 'Aktywowano :date',
|
|
'paused_at' => 'Wstrzymano :date',
|
|
'created_at' => 'Utworzono :date',
|
|
'danger_title' => 'Strefa zagrożenia',
|
|
'danger_description' => 'Nieodwracalne działania.',
|
|
'delete_title' => 'Usuń tę automatyzację',
|
|
'delete_description' => 'Trwale usuwa automatyzację i jej historię uruchomień.',
|
|
],
|
|
|
|
'status_run' => [
|
|
'pending' => 'Oczekuje',
|
|
'running' => 'W trakcie',
|
|
'waiting' => 'Oczekiwanie',
|
|
'completed' => 'Zakończone',
|
|
'failed' => 'Nieudane',
|
|
'cancelled' => 'Anulowane',
|
|
],
|
|
|
|
'node_type' => [
|
|
'trigger' => 'Wyzwalacz',
|
|
'generate' => 'Generuj treść',
|
|
'delay' => 'Opóźnienie',
|
|
'condition' => 'Warunek',
|
|
'publish' => 'Publikuj',
|
|
'webhook' => 'Webhook',
|
|
'end' => 'Koniec',
|
|
'fetch_rss' => 'Pobierz RSS',
|
|
'http_request' => 'Żądanie HTTP',
|
|
],
|
|
|
|
'invocations' => [
|
|
'empty' => 'Brak wywołań.',
|
|
'refresh' => 'Odśwież',
|
|
'search_placeholder' => 'Szukaj po identyfikatorze uruchomienia…',
|
|
'copied' => 'Skopiowano identyfikator uruchomienia.',
|
|
'loading' => 'Wczytywanie kroków…',
|
|
'no_steps' => 'Nie zarejestrowano żadnych kroków.',
|
|
'load_error' => 'Nie udało się wczytać kroków.',
|
|
'steps' => '{0}Brak kroków|{1}:count krok|[2,4]:count kroki|[5,*]:count kroków',
|
|
'filter' => [
|
|
'all' => 'Wszystkie statusy',
|
|
],
|
|
'columns' => [
|
|
'timestamp' => 'Znacznik czasu',
|
|
'run' => 'Uruchomienie',
|
|
'status' => 'Status',
|
|
'message' => 'Ostatnia wiadomość',
|
|
'duration' => 'Czas trwania',
|
|
],
|
|
'summary' => [
|
|
'completed' => 'Przepływ zakończony',
|
|
'failed' => 'Przepływ nieudany',
|
|
'running' => 'Przepływ w trakcie',
|
|
'cancelled' => 'Przepływ anulowany',
|
|
'pending' => 'Przepływ oczekuje',
|
|
],
|
|
],
|
|
|
|
'metrics' => [
|
|
'overview' => 'Przegląd',
|
|
'runs_over_time' => 'Uruchomienia w czasie',
|
|
'posts_by_platform' => 'Posty według platformy',
|
|
'no_posts' => 'W tym okresie nie opublikowano żadnych postów.',
|
|
'cards' => [
|
|
'runs' => 'Łączna liczba uruchomień',
|
|
'completed' => 'Zakończone',
|
|
'failed' => 'Nieudane',
|
|
'in_progress' => 'W trakcie',
|
|
'success_rate' => 'Wskaźnik powodzenia',
|
|
'avg_duration' => 'Śr. czas trwania',
|
|
'posts_created' => 'Utworzone posty',
|
|
],
|
|
'legend' => [
|
|
'started' => 'Rozpoczęte',
|
|
'completed' => 'Zakończone',
|
|
'failed' => 'Nieudane',
|
|
],
|
|
],
|
|
|
|
'categories' => [
|
|
'sources' => 'Źródła',
|
|
'content' => 'Treść',
|
|
'flow' => 'Przepływ',
|
|
'output' => 'Wyjście',
|
|
],
|
|
|
|
'variables' => [
|
|
'title' => 'Zmienne przepływu pracy',
|
|
'hint' => 'Wielokrotnego użytku wartości, do których odwołujesz się w dowolnym miejscu za pomocą {{ variables.KEY }}. Przechowywane w formie zaszyfrowanej.',
|
|
'empty' => 'Brak zmiennych.',
|
|
'key' => 'Klucz',
|
|
'value' => 'Wartość',
|
|
'key_placeholder' => 'API_KEY',
|
|
'value_placeholder' => 'Wartość',
|
|
'add' => 'Nowa zmienna',
|
|
],
|
|
|
|
'expr' => [
|
|
'trigger_event' => 'Nazwa zdarzenia wyzwalacza',
|
|
'trigger_fired_at' => 'Kiedy wyzwalacz się uruchomił',
|
|
'trigger_post_id' => 'Identyfikator posta wyzwalającego',
|
|
'trigger_post_content' => 'Treść posta wyzwalającego',
|
|
'trigger_post_status' => 'Status posta wyzwalającego',
|
|
'trigger_post_scheduled_at' => 'Kiedy post jest zaplanowany',
|
|
'trigger_post_published_at' => 'Kiedy post został opublikowany',
|
|
'fetched_title' => 'Tytuł pobranego elementu',
|
|
'fetched_link' => 'Link pobranego elementu',
|
|
'fetched_date' => 'Data publikacji pobranego elementu',
|
|
'fetched_content' => 'Pełna treść pobranego elementu',
|
|
'fetched_description' => 'Podsumowanie pobranego elementu',
|
|
'fetched_author' => 'Autor pobranego elementu',
|
|
'fetched_image' => 'Adres URL obrazu pobranego elementu',
|
|
'fetched_categories' => 'Kategorie pobranego elementu',
|
|
'fetched_enclosure' => 'Multimedia pobranego elementu (audio/wideo/plik)',
|
|
'fetched_pubdate' => 'Data publikacji pobranego elementu',
|
|
'fetched_http' => 'Pobrany element HTTP (dodaj pole)',
|
|
'generated_content' => 'Treść posta wygenerowana przez AI',
|
|
'generated_post_url' => 'Adres URL posta wygenerowanego przez AI',
|
|
'variable' => 'Zmienna przepływu pracy',
|
|
'now' => 'Bieżąca data i godzina',
|
|
],
|
|
|
|
'test' => [
|
|
'description' => 'Uruchamia automatyzację od początku do końca, używając wygenerowanego ładunku wyzwalacza. Przydatne do sprawdzania każdego węzła bez czekania na rzeczywisty harmonogram lub kanał.',
|
|
'starting' => 'Rozpoczynanie przebiegu testowego…',
|
|
'in_progress' => 'W trakcie',
|
|
'completed' => 'Zakończone',
|
|
'failed' => 'Nieudane',
|
|
'waiting' => 'Oczekiwanie',
|
|
'close' => 'Zamknij',
|
|
'no_node_runs' => 'Oczekiwanie na uruchomienie pierwszego węzła…',
|
|
'node_input' => 'Wejście',
|
|
'node_output' => 'Wyjście',
|
|
'node_error' => 'Błąd',
|
|
'no_new_items' => 'Brak nowych elementów — nic dalej się nie uruchomiło.',
|
|
'error_starting' => 'Nie udało się rozpocząć przebiegu testowego.',
|
|
'with_real_data' => 'Z rzeczywistymi danymi',
|
|
'run' => 'Uruchom test',
|
|
'idle_hint' => 'Kliknij Uruchom test, aby wykonać automatyzację od początku do końca.',
|
|
'real_data_hint' => 'Ten test opublikuje posty, przesunie znaczniki odpytywania i wywoła zewnętrzne skutki uboczne.',
|
|
'dry_badge' => 'Przebieg próbny',
|
|
],
|
|
|
|
'status' => [
|
|
'draft' => 'Szkic',
|
|
'active' => 'Aktywna',
|
|
'paused' => 'Wstrzymana',
|
|
],
|
|
|
|
'index' => [
|
|
'empty_title' => 'Brak automatyzacji',
|
|
'empty_description' => 'Utwórz swoją pierwszą automatyzację, aby publikować na autopilocie.',
|
|
'columns' => [
|
|
'name' => 'Nazwa',
|
|
'status' => 'Status',
|
|
'created' => 'Utworzono',
|
|
],
|
|
],
|
|
|
|
'form' => [
|
|
'activate_error_fallback' => 'Nie udało się aktywować automatyzacji.',
|
|
'pause_error_fallback' => 'Nie udało się wstrzymać automatyzacji.',
|
|
'save_error_fallback' => 'Nie udało się zapisać automatyzacji.',
|
|
'save_success' => 'Automatyzacja zapisana.',
|
|
'empty_canvas_title' => 'Zacznij budować swoją automatyzację',
|
|
'empty_canvas_description' => 'Przeciągnij węzeł z lewego panelu, aby rozpocząć.',
|
|
'name_placeholder' => 'Automatyzacja bez tytułu',
|
|
],
|
|
|
|
'nodes' => [
|
|
'trigger' => 'Wyzwalacz',
|
|
'generate' => 'Generuj',
|
|
'delay' => 'Opóźnienie',
|
|
'condition' => 'Warunek',
|
|
'publish' => 'Publikuj',
|
|
'webhook' => 'Webhook',
|
|
'end' => 'Koniec',
|
|
'end_summary' => 'Zatrzymuje automatyzację w tym miejscu',
|
|
'fetch_rss' => 'Pobierz RSS',
|
|
'http_request' => 'Żądanie HTTP',
|
|
'handles' => [
|
|
'items' => 'ma elementy',
|
|
'no_items' => 'brak elementów',
|
|
],
|
|
],
|
|
|
|
'config' => [
|
|
'select_placeholder' => 'Wybierz…',
|
|
'invalid_json' => 'To jeszcze nie jest prawidłowy JSON.',
|
|
'expand_editor' => 'Rozwiń edytor',
|
|
'minimize_editor' => 'Zminimalizuj',
|
|
|
|
'trigger' => [
|
|
'type' => 'Typ wyzwalacza',
|
|
'types' => [
|
|
'schedule' => 'Harmonogram',
|
|
'post_published' => 'Gdy post zostaje opublikowany',
|
|
'post_scheduled' => 'Gdy post zostaje zaplanowany',
|
|
],
|
|
'post_published_hint' => 'Uruchamia się za każdym razem, gdy dowolny post w tej przestrzeni roboczej zostanie opublikowany. Opublikowany post staje się dostępny pod {{ trigger.post }} dla kolejnych węzłów.',
|
|
'post_scheduled_hint' => 'Uruchamia się za każdym razem, gdy dowolny post w tej przestrzeni roboczej zostanie zaplanowany. Zaplanowany post jest dostępny pod {{ trigger.post }}.',
|
|
|
|
'schedule' => [
|
|
'field' => 'Interwał wyzwalania',
|
|
'fields' => [
|
|
'minutes' => 'Minuty',
|
|
'hours' => 'Godziny',
|
|
'days' => 'Dni',
|
|
'weeks' => 'Tygodnie',
|
|
'months' => 'Miesiące',
|
|
],
|
|
'minutes_interval' => 'Minuty między wyzwoleniami',
|
|
'hours_interval' => 'Godziny między wyzwoleniami',
|
|
'days_interval' => 'Dni między wyzwoleniami',
|
|
'hour' => 'Wyzwól o godzinie',
|
|
'minute' => 'Wyzwól w minucie',
|
|
'weekdays' => 'Wyzwól w dni tygodnia',
|
|
'day_of_month' => 'Dzień miesiąca',
|
|
'weekday_names' => [
|
|
'sun' => 'Nd',
|
|
'mon' => 'Pn',
|
|
'tue' => 'Wt',
|
|
'wed' => 'Śr',
|
|
'thu' => 'Cz',
|
|
'fri' => 'Pt',
|
|
'sat' => 'Sb',
|
|
],
|
|
'summary' => [
|
|
'every_n_minutes' => 'Uruchamia się co minutę|Uruchamia się co :count minuty|Uruchamia się co :count minut',
|
|
'every_n_hours' => 'Uruchamia się co godzinę o minucie :minute|Uruchamia się co :count godziny o minucie :minute|Uruchamia się co :count godzin o minucie :minute',
|
|
'every_n_days' => 'Uruchamia się codziennie o :time|Uruchamia się co :count dni o :time|Uruchamia się co :count dni o :time',
|
|
'weekly' => 'Uruchamia się w :days o :time',
|
|
'monthly' => 'Uruchamia się :day. dnia każdego miesiąca o :time',
|
|
],
|
|
],
|
|
],
|
|
'generate' => [
|
|
'social_accounts' => 'Konta społecznościowe',
|
|
'social_accounts_empty' => 'Brak połączonych kont społecznościowych. Najpierw połącz jedno.',
|
|
'target_slide_count' => 'Slajdy do wygenerowania',
|
|
'prompt_template' => 'Szablon promptu',
|
|
'prompt_template_hint' => 'Wpisz {{, aby wstawić dane z wcześniejszych kroków.',
|
|
'image_count' => 'Obrazy do wygenerowania',
|
|
'image_count_hint' => '0 = post tylko tekstowy (bez obrazu). 1 = pojedynczy obraz. 2+ = karuzela.',
|
|
'use_brand_voice' => 'Użyj głosu marki',
|
|
'use_brand_voice_hint' => 'Zastosuj opis i głos swojej marki. Wyłącz dla wiernego kuratorowania źródeł zewnętrznych (wiadomości, RSS).',
|
|
'use_brand_visuals' => 'Użyj wizualnej identyfikacji marki',
|
|
'use_brand_visuals_hint' => 'Kieruj obrazami AI za pomocą kolorów i tożsamości swojej marki. Wyłącz, aby uzyskać neutralne obrazy oparte wyłącznie na temacie posta.',
|
|
'style' => 'Styl',
|
|
'account_summary' => ':count konto · :format|:count konta · :format|:count kont · :format',
|
|
'formats' => [
|
|
'single' => 'pojedynczy',
|
|
'carousel' => 'karuzela',
|
|
],
|
|
],
|
|
'delay' => [
|
|
'duration' => 'Czas trwania',
|
|
'unit' => 'Jednostka',
|
|
'units' => [
|
|
'minutes' => 'Minuty',
|
|
'hours' => 'Godziny',
|
|
'days' => 'Dni',
|
|
],
|
|
],
|
|
'condition' => [
|
|
'field' => 'Pole',
|
|
'operator' => 'Operator',
|
|
'operators' => [
|
|
'contains' => 'zawiera',
|
|
'not_contains' => 'nie zawiera',
|
|
'equals' => 'równa się',
|
|
'not_equals' => 'nie równa się',
|
|
'matches' => 'pasuje (regex)',
|
|
'greater_than' => 'większe niż',
|
|
'less_than' => 'mniejsze niż',
|
|
],
|
|
'value' => 'Wartość',
|
|
],
|
|
'publish' => [
|
|
'mode' => 'Tryb',
|
|
'modes' => [
|
|
'now' => 'Opublikuj teraz',
|
|
'scheduled' => 'Zaplanuj',
|
|
'draft' => 'Zapisz jako szkic',
|
|
],
|
|
'scheduled_offset' => 'Przesunięcie od wyzwolenia (minuty)',
|
|
'offset_summary' => ':mode · +:offset min',
|
|
],
|
|
'webhook' => [
|
|
'url' => 'URL',
|
|
'method' => 'Metoda',
|
|
'payload_template' => 'Szablon ładunku (JSON)',
|
|
],
|
|
'end' => [
|
|
'reason' => 'Powód (opcjonalnie)',
|
|
'reason_placeholder' => 'np. Odfiltrowane przez warunek',
|
|
],
|
|
'fetch_rss' => [
|
|
'feed_url' => 'Adres URL kanału',
|
|
'feed_url_hint' => 'Przy pierwszym uruchomieniu znacznik jest ustawiany na „teraz”, aby elementy historyczne nie zalały kolejnych węzłów. Kolejne uruchomienia widzą tylko elementy nowsze niż poprzednie odpytanie.',
|
|
'inspect' => 'Zbadaj kanał',
|
|
'inspecting' => 'Badanie…',
|
|
'inspect_hint' => 'Pobierz próbkę, aby odkryć dostępne pola do użycia w kolejnych węzłach.',
|
|
'inspect_error' => 'Nie udało się odczytać tego kanału. Sprawdź adres URL i spróbuj ponownie.',
|
|
'discovered_fields' => 'Dostępne pola',
|
|
'discovered_empty' => 'Nie znaleziono pól w najnowszym elemencie.',
|
|
],
|
|
'http_request' => [
|
|
'url' => 'URL',
|
|
'method' => 'Metoda',
|
|
'auth_type' => 'Uwierzytelnianie',
|
|
'auth' => [
|
|
'none' => 'Brak (publiczne)',
|
|
'bearer' => 'Token Bearer',
|
|
'basic' => 'Uwierzytelnianie podstawowe',
|
|
'api_key' => 'Nagłówek z kluczem API',
|
|
],
|
|
'bearer_token' => 'Token Bearer',
|
|
'basic_username' => 'Nazwa użytkownika',
|
|
'basic_password' => 'Hasło',
|
|
'api_key_header' => 'Nazwa nagłówka',
|
|
'api_key_value' => 'Klucz API',
|
|
'body_template' => 'Szablon treści (JSON)',
|
|
'headers' => 'Nagłówki',
|
|
'header_name' => 'Nazwa nagłówka',
|
|
'header_value' => 'Wartość',
|
|
'add_header' => 'Dodaj nagłówek',
|
|
'polling_section' => 'Lista i deduplikacja (opcjonalnie)',
|
|
'polling_hint' => 'Gdy odpowiedź jest listą, każdy element uruchamia przepływ osobno. Pojedynczy obiekt uruchamia się raz.',
|
|
'items_path' => 'Ścieżka do elementów',
|
|
'items_path_hint' => 'Pozostaw puste, jeśli odpowiedź jest już tablicą. Użyj ścieżki z kropkami (np. data.items) dla zagnieżdżonej tablicy lub * dla obiektu z kluczami po id.',
|
|
'item_key_path' => 'Ścieżka do klucza elementu',
|
|
'item_key_path_hint' => 'Ścieżka JSON do unikalnego id (np. id). Elementy już widziane są pomijane, więc kanał bez dat nadal przekazuje dalej tylko nowe wpisy.',
|
|
'item_date_path' => 'Ścieżka do daty elementu',
|
|
'item_date_path_hint' => 'Ścieżka JSON do znacznika czasu elementu (np. published_at). Preferowana zamiast ścieżki klucza, gdy jest dostępna. Pierwsze odpytanie zapisuje punkt odniesienia i nic nie przekazuje, więc istniejący kanał nigdy nie zaleje systemu pierwszego dnia.',
|
|
],
|
|
],
|
|
|
|
'delete' => [
|
|
'title' => 'Usuń automatyzację',
|
|
'description' => 'Czy na pewno chcesz usunąć tę automatyzację? Wszystkie uruchomienia i elementy wyzwalacza również zostaną usunięte. Tej operacji nie można cofnąć.',
|
|
'confirm' => 'Usuń',
|
|
'cancel' => 'Anuluj',
|
|
],
|
|
|
|
'flash' => [
|
|
'deleted' => 'Automatyzacja została pomyślnie usunięta!',
|
|
],
|
|
|
|
'errors' => [
|
|
'no_active_social_accounts' => 'Brak aktywnych kont społecznościowych skonfigurowanych dla tej automatyzacji.',
|
|
'must_have_one_trigger' => 'Automatyzacja musi mieć dokładnie jeden węzeł wyzwalacza.',
|
|
'trigger_must_be_connected' => 'Węzeł wyzwalacza musi być połączony z co najmniej jednym węzłem.',
|
|
'graph_contains_cycle' => 'Graf automatyzacji zawiera cykl.',
|
|
'only_failed_can_retry' => 'Tylko nieudane uruchomienia można ponowić.',
|
|
'no_generated_post' => 'Nie znaleziono wygenerowanego posta w uruchomieniu.',
|
|
'webhook_server_error' => 'Błąd serwera webhooka.',
|
|
'webhook_request_failed' => 'Nie udało się zrealizować żądania webhooka.',
|
|
'webhook_missing_url' => 'W węźle webhooka brakuje adresu URL.',
|
|
'webhook_invalid_payload_json' => 'Szablon ładunku nie jest prawidłowym JSON-em.',
|
|
'url_not_allowed' => 'Adres URL żądania wskazuje na prywatny lub nieosiągalny adres i został zablokowany.',
|
|
'node_no_longer_exists' => 'Węzeł :node_id już nie istnieje w automatyzacji.',
|
|
'no_trigger_connection' => 'Żaden węzeł nie jest połączony z węzłem wyzwalacza.',
|
|
'fetch_rss_missing_url' => 'W węźle Pobierz RSS brakuje adresu URL kanału.',
|
|
'fetch_rss_request_failed' => 'Żądanie kanału RSS nie powiodło się.',
|
|
'fetch_rss_malformed' => 'Kanał RSS jest uszkodzony.',
|
|
'http_missing_url' => 'W węźle żądania HTTP brakuje adresu URL.',
|
|
'http_request_exception' => 'Żądanie HTTP zgłosiło wyjątek.',
|
|
'http_request_failed' => 'Żądanie HTTP nie powiodło się.',
|
|
'http_items_path_not_array' => 'Ścieżka do elementów nie zwróciła listy.',
|
|
],
|
|
];
|