PSA/server/public/locales/pl/msp/service-catalog.json
Hermes 284313f908
Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Initial import of AlgaPSA codebase from PSA server
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz

Source: /opt/alga-psa on psa.joliet.tech
2026-06-22 16:12:17 -05:00

450 lines
16 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"taxRates": {
"errors": {
"loadRegions": "Nie udało się załadować regionów podatkowych.",
"validateDeletion": "Nie udało się potwierdzić usunięcia. Spróbuj ponownie.",
"fetchRates": "Nie udało się pobrać stawek podatku",
"add": "Nie udało się dodać stawki podatku",
"update": "Nie udało się zaktualizować stawki podatku",
"confirmDeletion": "Nie udało się potwierdzić usunięcia stawki podatku."
},
"validation": {
"requiredFieldsTitle": "Proszę wypełnić wymagane pola:",
"region": "Region podatkowy",
"percentage": "Procent podatku",
"startDate": "Data rozpoczęcia"
},
"table": {
"description": "Opis",
"startDate": "Data rozpoczęcia",
"endDate": "Data zakończenia",
"actions": "Działania",
"notAvailable": "Nie dotyczy",
"region": "Region",
"taxPercentage": "Procent podatku",
"composite": "Kompozyt"
},
"actions": {
"openMenu": "Otwórz menu",
"edit": "Redagować",
"delete": "Usuwać",
"advancedSettings": "Ustawienia zaawansowane",
"addNew": "Dodaj nową stawkę podatku",
"add": "Dodaj stawkę podatku",
"update": "Zaktualizuj stawkę podatku"
},
"dialog": {
"fields": {
"description": "Opis",
"startDate": "Data rozpoczęcia *",
"endDate": "Data zakończenia (opcjonalnie)",
"region": "Region podatkowy *",
"percentage": "Procent podatku *"
},
"placeholders": {
"loadingRegions": "Ładowanie regionów...",
"selectRegion": "Wybierz region podatkowy",
"percentage": "Wpisz procent"
},
"addTitle": "Dodaj nową stawkę podatku",
"editTitle": "Edytuj stawkę podatku",
"description": "Wprowadź szczegóły stawki podatku."
},
"title": "Stawki podatkowe",
"loading": "Ładowanie stawek podatkowych",
"deleteEntity": {
"fallback": "tę stawkę podatku",
"withRegion": "{{regionName}} stawka podatku"
}
},
"taxRateDetail": {
"fields": {
"regionCode": "Kod regionu",
"description": "Opis",
"startDate": "Data rozpoczęcia",
"endDate": "Data zakończenia",
"taxPercentage": "Procent podatku",
"taxType": "Rodzaj podatku",
"isComposite": "Jest kompozytowy",
"isActive": "Jest aktywny"
},
"values": {
"dash": "-",
"noEndDate": "Brak daty zakończenia",
"yes": "Tak",
"no": "NIE",
"active": "Aktywny",
"inactive": "Nieaktywny",
"composite": "Kompozyt"
},
"actions": {
"back": "Wracając do stawek podatkowych"
},
"subtitle": "{{regionCode}} {{percentage}}%",
"tabs": {
"details": "Szczegóły",
"components": "Komponenty",
"brackets": "Progi",
"holidays": "Święta"
},
"precedence": {
"title": "Pierwszeństwo naliczania podatku",
"clientExempt": "Flaga zwolnienia klienta z podatku jest sprawdzana jako pierwsza (jeśli jest zwolniona, nie ma zastosowania żaden podatek)",
"serviceSpecific": "Stosowana jest stawka podatku specyficzna dla usługi, jeśli została przypisana",
"clientDefault": "Domyślna stawka podatku klienta jest używana jako rezerwa",
"regionLookup": "Wyszukiwanie regionu podatkowego określa obowiązującą stawkę na podstawie lokalizacji"
},
"components": {
"simpleRateMessage": "Jest to prosta stawka podatku, a nie stawka złożona. Składniki podatku są stosowane wyłącznie w przypadku podatków złożonych.",
"enableCompositeMessage": "Aby skorzystać ze składników podatku należy podczas edycji zaznaczyć tę stawkę jako złożoną."
},
"brackets": {
"intro": "Progresywne progi podatkowe stosują różne stawki dla różnych części kwoty.",
"precedence": "Kiedy nawiasy są zdefiniowane, mają one pierwszeństwo przed zryczałtowaną stawką procentową."
}
},
"serviceForm": {
"errors": {
"loadServiceTypes": "Nie udało się pobrać typów usług",
"serviceTypeNotFound": "Nie znaleziono wybranego typu usługi",
"create": "Nie udało się utworzyć usługi",
"loadTaxData": "Nie udało się załadować danych podatkowych.",
"selectServiceType": "Proszę wybrać rodzaj usługi"
},
"fields": {
"serviceName": {
"placeholder": "Nazwa usługi"
},
"serviceType": {
"label": "Typ usługi",
"placeholder": "Wybierz typ usługi"
},
"billingMethod": {
"label": "Metoda rozliczeniowa",
"placeholder": "Wybierz metodę rozliczeń"
},
"description": {
"label": "Opis",
"placeholder": "Opis usługi"
},
"taxRate": {
"label": "Stawka podatku",
"placeholderLoading": "Ładowanie danych podatkowych...",
"placeholder": "Wybierz stawkę podatku (opcjonalnie)"
},
"defaultRate": {
"placeholder": "Stawka domyślna"
},
"unitOfMeasure": {
"placeholder": "Jednostka miary"
}
},
"options": {
"billingMethod": {
"hourly": "Cogodzinny",
"usage": "Oparte na użytkowaniu",
"fixed": "Stała cena"
}
},
"taxRateOption": {
"fallback": "Nie dotyczy",
"label": "{{description}} {{percentage}}%"
},
"actions": {
"submit": "Dodaj usługę"
}
},
"serviceSelection": {
"table": {
"type": "Typ",
"unit": "Jednostka",
"rate": "Stawka",
"product": "Produkt",
"itemName": "Nazwa przedmiotu",
"service": "Serwis",
"unknown": "Nieznany"
},
"actions": {
"cancel": "Anuluj",
"addSelected": "Dodaj wybrane usługi",
"adding": "Dodawanie..."
},
"title": "Dodaj usługi i produkty do planu",
"searchPlaceholder": "Wyszukaj usługi/produkty...",
"errors": {
"load": "Nie udało się załadować usług",
"add": "Nie udało się dodać usług do planu"
},
"states": {
"loading": "Ładowanie usług...",
"empty": "Nie znaleziono usług"
},
"selection": {
"countOne": "Wybrano usługę {{count}}.",
"countOther": "Wybrano {{count}} usługi"
},
"quickAdd": {
"label": "Szybkie dodawanie:",
"allType": "Wszystkie {{type}}"
}
},
"configType": {
"warningDialog": {
"cancel": "Anuluj",
"title": "Zmienić typ konfiguracji?",
"description": "Zmiana typu konfiguracji spowoduje zresetowanie wszelkich ustawień specyficznych dla typu. Tej akcji nie można cofnąć.",
"confirm": "Zmień typ"
},
"placeholder": "Wybierz typ konfiguracji",
"options": {
"Fixed": {
"label": "Stała cena",
"description": "Usługa o stałej cenie ze spójnymi rozliczeniami niezależnie od użytkowania. Idealny do przewidywalnych usług."
},
"Hourly": {
"label": "Stawka godzinowa",
"description": "Rozliczenia czasowe z konfigurowalnymi stawkami. Najlepsze rozwiązanie w przypadku zmiennych obciążeń rozliczanych według poświęconego czasu."
},
"Usage": {
"label": "Oparte na użyciu",
"description": "Rozliczenia oparte na wykorzystaniu z wielopoziomowymi opcjami cenowymi. Idealny pod usługi mierzone konsumpcją."
},
"Bucket": {
"label": "Pakiet godzin",
"description": "Wykupione z góry godziny, które można wykorzystać w czasie. Dobre rozwiązanie dla klientów potrzebujących elastyczności przy ograniczonym budżecie."
}
}
},
"serviceConfig": {
"fields": {
"quantity": {
"label": "Ilość",
"placeholder": "Wprowadź ilość",
"help": "Liczba jednostek tej usługi",
"errorNegative": "Ilość nie może być ujemna"
},
"customRate": {
"label": "Stawka niestandardowa",
"placeholder": "Wprowadź stawkę",
"placeholderDefault": "Wartość domyślna: {{rate}}",
"helpCustom": "Niestandardowa stawka za tę usługę",
"helpUseDefault": "Pozostaw puste, aby użyć stawki domyślnej ({{rate}})",
"errorNegative": "Stawka nie może być ujemna"
},
"configurationType": "Typ konfiguracji"
},
"actions": {
"cancel": "Anuluj",
"saving": "Zapisywanie...",
"save": "Zapisz konfigurację"
},
"title": "Konfiguracja usługi",
"serviceLabel": "Serwis",
"effectiveModeLabel": "Tryb efektywny",
"defaultSourceLabel": "Domyślne źródło",
"modes": {
"Fixed": "Stała cena",
"Hourly": "Stawka godzinowa",
"Usage": "Oparte na użyciu",
"Bucket": "Pakiet godzin"
},
"defaultSources": {
"catalog default": "domyślny katalog",
"contract override": "unieważnienie umowy",
"none": "żaden"
},
"bucketOverlay": {
"recommendHours": "Polecam kubeł godzin",
"recommendUsage": "Polecam kubeł konsumpcji"
}
},
"hourlyConfig": {
"fields": {
"minimumBillableTime": {
"placeholder": "15",
"label": "Minimalny czas rozliczeniowy (minuty)",
"help": "Minimalny czas na rozliczenie (np. 15 minut)",
"errorNegative": "Minimalny czas rozliczeniowy nie może być ujemny"
},
"roundUpToNearest": {
"placeholder": "15",
"label": "Zaokrąglij do najbliższego (minuty)",
"help": "Okrągłe wpisy czasu do najbliższego przyrostu",
"errorNegative": "Wartość zaokrąglenia nie może być ujemna"
},
"newUserType": {
"label": "Typ użytkownika",
"placeholder": "Wybierz typ użytkownika"
},
"newUserTypeRate": {
"label": "Stawka",
"placeholder": "Wprowadź stawkę",
"errorNegative": "Współczynnik typu użytkownika nie może być ujemny"
}
},
"userTypeRates": {
"headers": {
"userType": "Typ użytkownika",
"rate": "Stawka"
},
"title": "Stawki za typ użytkownika",
"options": {
"technician": "Technik",
"engineer": "Inżynier",
"consultant": "Konsultant",
"project_manager": "Kierownik projektu",
"admin": "Administrator"
},
"actions": {
"addRate": "Dodaj stawkę"
}
},
"title": "Konfiguracja stawki godzinowej"
},
"usageConfig": {
"defaults": {
"unitOfMeasure": "Jednostka"
},
"fields": {
"unitOfMeasure": {
"errorRequired": "Jednostka miary jest wymagana",
"label": "Jednostka miary",
"placeholder": "Wprowadź jednostkę miary",
"help": "Jednostka używana do pomiaru użycia (np. GB, użytkownik, urządzenie)"
},
"minimumUsage": {
"placeholder": "0",
"label": "Minimalny próg wykorzystania",
"help": "Minimalne płatne użycie w okresie (0 oznacza brak minimum)",
"errorNegative": "Minimalne użycie nie może być ujemne"
},
"enableTieredPricing": "Włącz ceny warstwowe"
},
"title": "Konfiguracja oparta na użyciu",
"tiers": {
"title": "Poziomy cenowe",
"addTier": "Dodaj poziom",
"empty": "Nie skonfigurowano żadnych poziomów. Dodaj poziom, aby zdefiniować ceny oparte na wolumenie.",
"from": "Od ({{unit}})",
"to": "Do ({{unit}})",
"ratePer": "Stawka za {{unit}}",
"unlimited": "Nieograniczony",
"help": "Skonfiguruj poziomy cenowe oparte na wolumenie. Każdy poziom stosuje swoją stawkę do wykorzystania mieszczącego się w jego zakresie.",
"errors": {
"onlyLastUnlimited": "Tylko ostatni poziom może mieć nieograniczoną górną granicę",
"overlap": "Poziomy nie mogą się pokrywać",
"upperGreaterThanLower": "Górna granica poziomu musi być większa niż dolna granica",
"rateNegative": "Stawki poziomów nie mogą być ujemne"
}
}
},
"rateTiers": {
"table": {
"actions": "Działania",
"minQuantity": "Minimalna ilość",
"maxQuantity": "Maksymalna ilość",
"rate": "Stawka ({{unit}})",
"unlimited": "Nieograniczony"
},
"actions": {
"saving": "Zapisywanie...",
"addTier": "Dodaj poziom",
"save": "Zapisz poziomy stawek"
},
"title": "Poziomy stawek i rabaty ilościowe",
"description": "Skonfiguruj różne stawki w oparciu o zakresy ilości. Większe ilości mogą mieć zniżki.",
"loading": "Wczytuję poziomy stawek...",
"formattedRate": "{{rate}} na {{unit}}",
"errors": {
"load": "Nie udało się wczytać poziomów stawek",
"save": "Nie udało się zapisać poziomów stawek",
"lastTier": "Nie można usunąć ostatniego poziomu",
"minPositive": "Minimalna ilość musi być większa niż 0",
"maxGreaterThanMin": "Ilość maksymalna musi być większa niż ilość minimalna",
"rateNegative": "Stawka nie może być ujemna",
"overlap": "Zakresy poziomów nie mogą się pokrywać"
}
},
"serviceTaxSettings": {
"fields": {
"taxRate": {
"label": "Stawka podatku",
"placeholderLoading": "Ładowanie stawek...",
"placeholder": "Wybierz Stawkę podatku",
"help": "Wybierz opcję „Niepodlegające opodatkowaniu”, jeśli ta usługa nie powinna być opodatkowana."
}
},
"options": {
"nonTaxable": "Nie podlega opodatkowaniu"
},
"errors": {
"loadTaxRates": "Nie udało się wczytać stawek podatku.",
"save": "Nie udało się zapisać ustawień podatkowych"
},
"actions": {
"saving": "Zapisywanie...",
"save": "Zapisz ustawienia podatkowe"
},
"title": "Ustawienia podatkowe",
"optionLabel": "{{taxType}} ({{countryCode}}) {{percentage}}%"
},
"fixedConfig": {
"title": "Konfiguracja ze stałą ceną",
"fields": {
"adjustForPartialPeriods": "Dostosuj do okresów częściowych",
"billingCycleAlignment": {
"label": "Wyrównanie cykli rozliczeniowych",
"placeholder": "Wybierz wyrównanie",
"help": "Kontroluje sposób obliczania zasięgu częściowego okresu, gdy opłata cykliczna musi zostać skalowana do okresu krótszego niż pełny okres świadczenia usługi."
}
},
"options": {
"start": "Początek cyklu rozliczeniowego",
"end": "Koniec cyklu rozliczeniowego",
"prorated": "Proporcjonalne pokrycie"
}
},
"bucketConfig": {
"title": "Konfiguracja pakietu godzin",
"fields": {
"totalMinutes": {
"label": "Łączna liczba minut",
"placeholder": "Wprowadź łączną liczbę godzin",
"help": "Całkowita liczba minut zawarta w tej pozycji kontraktu segmentowego",
"errorPositive": "Całkowita liczba minut musi być większa od zera"
},
"billingPeriod": {
"label": "Okres rozliczeniowy",
"placeholder": "Wybierz okres rozliczeniowy",
"help": "Okres, na który przydzielane są godziny segmentu",
"mismatchPrefix": "Niedopasowanie:",
"mismatch": "Okres rozliczeniowy pakietu ({{billingPeriod}}) powinien odpowiadać częstotliwości rozliczeniowej pozycji umowy ({{contractLineBillingFrequency}})."
},
"overageRate": {
"label": "Wskaźnik nadwyżki",
"placeholder": "Wprowadź stawkę nadwyżki",
"help": "Stawka godzinowa naliczana za godziny wykorzystania przekraczające limit koszyka",
"errorNegative": "Wskaźnik nadwyżki nie może być ujemny"
},
"allowRollover": "Pozwól, aby niewykorzystane godziny przeszły na następny okres"
}
},
"serviceDetail": {
"loading": "Ładowanie konfiguracji usługi...",
"errors": {
"notFound": "Nie znaleziono usługi",
"load": "Nie udało się załadować konfiguracji usługi"
},
"title": "Konfiguracja usługi: {{serviceName}}",
"description": "Skonfiguruj szczegóły usługi, ceny i ustawienia podatkowe",
"sections": {
"unitOfMeasure": "Jednostka miary",
"baseRate": "Stawka podstawowa"
},
"baseRate": {
"summary": "{{rate}} na {{unit}}",
"help": "Stawkę podstawową można zastąpić poniższymi progami opartymi na ilości."
}
}
}