{
  "core/audits/accessibility/accesskeys.js | description": {
    "message": "Klawisze dostępu umożliwiają szybkie ustawienie fokusu na określonej części strony. Aby nawigacja działała dobrze, każdy klawisz dostępu musi być unikalny. [Więcej informacji o kluczach dostępu](https://dequeuniversity.com/rules/axe/4.11/accesskeys)"
  },
  "core/audits/accessibility/accesskeys.js | failureTitle": {
    "message": "Wartości `[accesskey]` nie są unikalne"
  },
  "core/audits/accessibility/accesskeys.js | title": {
    "message": "Wartości `[accesskey]` są unikalne"
  },
  "core/audits/accessibility/aria-allowed-attr.js | description": {
    "message": "Każda `role` ARIA obsługuje podzbiór atrybutów `aria-*`. Brak ich dopasowania skutkuje niepoprawnością atrybutów `aria-*`. [Jak dopasowywać atrybuty ARIA do ich ról](https://dequeuniversity.com/rules/axe/4.11/aria-allowed-attr)"
  },
  "core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
    "message": "Atrybuty `[aria-*]` nie pasują do swoich ról"
  },
  "core/audits/accessibility/aria-allowed-attr.js | title": {
    "message": "Atrybuty `[aria-*]` odpowiadają swoim rolom"
  },
  "core/audits/accessibility/aria-allowed-role.js | description": {
    "message": "Kilka elementów HTML może mieć przypisane tylko określone role ARIA. Używanie ról ARIA tam, gdzie nie są dozwolone, może utrudniać dostęp do strony internetowej. [Więcej informacji o rolach ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-allowed-role)"
  },
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
    "message": "Używa ról ARIA w niezgodnych elementach"
  },
  "core/audits/accessibility/aria-allowed-role.js | title": {
    "message": "Używa ról ARIA tylko w zgodnych elementach"
  },
  "core/audits/accessibility/aria-command-name.js | description": {
    "message": "Gdy element nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają go nazwą ogólną, przez co jest on bezużyteczny dla ich użytkowników. [Jak ułatwić dostęp do elementów poleceń](https://dequeuniversity.com/rules/axe/4.11/aria-command-name)"
  },
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
    "message": "Elementy `button`, `link` i `menuitem` nie mają nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-command-name.js | title": {
    "message": "Elementy `button`, `link` i `menuitem` mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-conditional-attr.js | description": {
    "message": "Niektóre atrybuty ARIA są dozwolone w elemencie tylko pod pewnymi warunkami. [Więcej informacji o warunkowych atrybutach ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-conditional-attr)"
  },
  "core/audits/accessibility/aria-conditional-attr.js | failureTitle": {
    "message": "Atrybuty ARIA nie są używane zgodnie z określoną rolą elementu"
  },
  "core/audits/accessibility/aria-conditional-attr.js | title": {
    "message": "Atrybuty ARIA są używane zgodnie z określoną rolą elementu"
  },
  "core/audits/accessibility/aria-deprecated-role.js | description": {
    "message": "Wycofane role ARIA mogą nie być prawidłowo przetwarzane przez technologię wspomagającą osoby z niepełnosprawnością. [Więcej informacji o wycofanych rolach ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-deprecated-role)"
  },
  "core/audits/accessibility/aria-deprecated-role.js | failureTitle": {
    "message": "Użyto wycofanych ról ARIA"
  },
  "core/audits/accessibility/aria-deprecated-role.js | title": {
    "message": "Nie użyto wycofanych ról ARIA"
  },
  "core/audits/accessibility/aria-dialog-name.js | description": {
    "message": "Elementy okien ARIA, które nie zawierają nazw na potrzeby ułatwień dostępu, mogą uniemożliwiać użytkownikom czytników ekranu rozpoznanie zastosowania tych elementów. [Więcej informacji o ułatwieniach dostępu w elementach okien ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-dialog-name)"
  },
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
    "message": "Elementy z atrybutami `role=\"dialog\"` lub `role=\"alertdialog\"` nie mają nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-dialog-name.js | title": {
    "message": "Elementy z atrybutami `role=\"dialog\"` lub `role=\"alertdialog\"` mają nazwy na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-hidden-body.js | description": {
    "message": "Technologie wspomagające, takie jak czytniki ekranu, mogą działać nieprawidłowo, gdy dokument `<body>` ma ustawiony atrybut `aria-hidden=\"true\"`. [Jak atrybut `aria-hidden` wpływa na treść dokumentu](https://dequeuniversity.com/rules/axe/4.11/aria-hidden-body)"
  },
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
    "message": "Dokument `<body>` zawiera atrybut `[aria-hidden=\"true\"]`"
  },
  "core/audits/accessibility/aria-hidden-body.js | title": {
    "message": "Dokument `<body>` nie zawiera atrybutu `[aria-hidden=\"true\"]`"
  },
  "core/audits/accessibility/aria-hidden-focus.js | description": {
    "message": "Element `[aria-hidden=\"true\"]` zawiera interaktywne elementy podrzędne z możliwością zaznaczenia, które są niedostępne dla użytkowników technologii wspomagających, takich jak czytniki ekranu. [Jak element `aria-hidden` wpływa na elementy, które można zaznaczyć](https://dequeuniversity.com/rules/axe/4.11/aria-hidden-focus)"
  },
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
    "message": "Elementy `[aria-hidden=\"true\"]` zawierają elementy podrzędne, które można zaznaczyć"
  },
  "core/audits/accessibility/aria-hidden-focus.js | title": {
    "message": "Elementy `[aria-hidden=\"true\"]` nie zawierają elementów podrzędnych, które można zaznaczyć"
  },
  "core/audits/accessibility/aria-input-field-name.js | description": {
    "message": "Gdy pole do wprowadzania danych nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają je nazwą ogólną, przez co jest ono bezużyteczne dla ich użytkowników. [Więcej informacji o etykietach pól do wprowadzania danych](https://dequeuniversity.com/rules/axe/4.11/aria-input-field-name)"
  },
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
    "message": "Pola do wprowadzania danych ARIA nie mają nazw na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-input-field-name.js | title": {
    "message": "Pola do wprowadzania danych ARIA mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-meter-name.js | description": {
    "message": "Gdy element meter nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają go nazwą ogólną, przez co jest on bezużyteczny dla ich użytkowników. [Dowiedz się, jak nazywać elementy `meter`](https://dequeuniversity.com/rules/axe/4.11/aria-meter-name)"
  },
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
    "message": "Elementy ARIA `meter` nie mają nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-meter-name.js | title": {
    "message": "Elementy ARIA `meter` mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-progressbar-name.js | description": {
    "message": "Gdy element `progressbar` nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają go nazwą ogólną, przez co jest on bezużyteczny dla ich użytkowników. [Jak dodawać etykiety do elementów `progressbar`](https://dequeuniversity.com/rules/axe/4.11/aria-progressbar-name)"
  },
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
    "message": "Elementy ARIA `progressbar` nie mają nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-progressbar-name.js | title": {
    "message": "Elementy ARIA `progressbar` mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-prohibited-attr.js | description": {
    "message": "Używanie atrybutów ARIA w rolach, w których jest to zabronione, może spowodować, że użytkownikom technologii wspomagających osoby z niepełnosprawnością nie będą przekazywane ważne informacje. [Więcej informacji o zabronionych rolach ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-prohibited-attr)"
  },
  "core/audits/accessibility/aria-prohibited-attr.js | failureTitle": {
    "message": "Elementy używają zabronionych atrybutów ARIA"
  },
  "core/audits/accessibility/aria-prohibited-attr.js | title": {
    "message": "Elementy używają tylko dozwolonych atrybutów ARIA"
  },
  "core/audits/accessibility/aria-required-attr.js | description": {
    "message": "Niektóre role ARIA mają atrybuty wymagane, które opisują stan elementu na potrzeby czytników ekranu. [Więcej informacji o rolach i wymaganych atrybutach](https://dequeuniversity.com/rules/axe/4.11/aria-required-attr)"
  },
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
    "message": "Elementy z atrybutem `[role]` nie mają wszystkich wymaganych atrybutów `[aria-*]`"
  },
  "core/audits/accessibility/aria-required-attr.js | title": {
    "message": "Elementy `[role]` mają wszystkie wymagane atrybuty `[aria-*]`"
  },
  "core/audits/accessibility/aria-required-children.js | description": {
    "message": "Niektóre role nadrzędne ARIA muszą zawierać określone role podrzędne, aby poprawnie realizować funkcje ułatwień dostępu. [Więcej informacji o rolach i wymaganych elementach podrzędnych](https://dequeuniversity.com/rules/axe/4.11/aria-required-children)"
  },
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
    "message": "Elementy z atrybutem ARIA `[role]`, których elementy podrzędne muszą zawierać określony atrybut `[role]`, nie mają niektórych lub wszystkich tych wymaganych elementów podrzędnych."
  },
  "core/audits/accessibility/aria-required-children.js | title": {
    "message": "Elementy z atrybutem ARIA `[role]`, których elementy podrzędne muszą zawierać określony atrybut `[role]`, mają wszystkie wymagane elementy podrzędne."
  },
  "core/audits/accessibility/aria-required-parent.js | description": {
    "message": "Niektóre role podrzędne ARIA muszą znajdować się wewnątrz określonych ról nadrzędnych, aby poprawnie realizować funkcje ułatwień dostępu. [Więcej informacji o rolach ARIA i wymaganych elementach nadrzędnych](https://dequeuniversity.com/rules/axe/4.11/aria-required-parent)"
  },
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
    "message": "Elementy `[role]` nie znajdują się wewnątrz wymaganych elementów nadrzędnych"
  },
  "core/audits/accessibility/aria-required-parent.js | title": {
    "message": "Elementy `[role]` znajdują się wewnątrz wymaganych elementów nadrzędnych"
  },
  "core/audits/accessibility/aria-roles.js | description": {
    "message": "Role ARIA muszą mieć prawidłowe wartości, aby poprawnie realizować funkcje ułatwień dostępu. [Więcej informacji o prawidłowych rolach ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-roles)"
  },
  "core/audits/accessibility/aria-roles.js | failureTitle": {
    "message": "Wartości `[role]` są nieprawidłowe"
  },
  "core/audits/accessibility/aria-roles.js | title": {
    "message": "Wartości `[role]` są prawidłowe"
  },
  "core/audits/accessibility/aria-text.js | description": {
    "message": "Dodanie atrybutu `role=text` wokół węzła tekstowego ujętego w znaczniki umożliwi funkcji VoiceOver rozpoznanie go jako 1 wyrażenia. Możliwe do zaznaczenia elementy podrzędne nie będą jednak odczytywane. [Więcej informacji o atrybucie `role=text`](https://dequeuniversity.com/rules/axe/4.11/aria-text)"
  },
  "core/audits/accessibility/aria-text.js | failureTitle": {
    "message": "Elementy z atrybutem `role=text` mają możliwe do zaznaczenia elementy podrzędne."
  },
  "core/audits/accessibility/aria-text.js | title": {
    "message": "Elementy z atrybutem `role=text` nie mają możliwych do zaznaczenia elementów podrzędnych."
  },
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
    "message": "Gdy pole przełączania nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają je nazwą ogólną, przez co jest ono bezużyteczne dla ich użytkowników. [Więcej informacji o polach przełączania](https://dequeuniversity.com/rules/axe/4.11/aria-toggle-field-name)"
  },
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
    "message": "Pola przełączania ARIA nie mają nazw na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-toggle-field-name.js | title": {
    "message": "Pola przełączania ARIA mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-tooltip-name.js | description": {
    "message": "Gdy element tooltip nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają go nazwą ogólną, przez co jest on bezużyteczny dla ich użytkowników. [Dowiedz się, jak nazywać elementy `tooltip`](https://dequeuniversity.com/rules/axe/4.11/aria-tooltip-name)"
  },
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
    "message": "Elementy ARIA `tooltip` nie mają nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-tooltip-name.js | title": {
    "message": "Elementy ARIA `tooltip` mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-treeitem-name.js | description": {
    "message": "Gdy element `treeitem` nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają go nazwą ogólną, przez co jest on bezużyteczny dla ich użytkowników. [Więcej informacji o dodawaniu etykiet do elementów `treeitem`](https://dequeuniversity.com/rules/axe/4.11/aria-treeitem-name)"
  },
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
    "message": "Elementy ARIA `treeitem` nie mają nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/aria-treeitem-name.js | title": {
    "message": "Elementy ARIA `treeitem` mają nazwy na potrzeby ułatwień dostępu"
  },
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
    "message": "Technologie wspomagające, takie jak czytniki ekranu, nie potrafią interpretować atrybutów ARIA o nieprawidłowej wartości. [Więcej informacji o prawidłowych wartościach atrybutów ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-valid-attr-value)"
  },
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
    "message": "Atrybuty `[aria-*]` nie mają prawidłowych wartości"
  },
  "core/audits/accessibility/aria-valid-attr-value.js | title": {
    "message": "Atrybuty `[aria-*]` mają prawidłowe wartości"
  },
  "core/audits/accessibility/aria-valid-attr.js | description": {
    "message": "Technologie wspomagające, takie jak czytniki ekranu, nie potrafią interpretować atrybutów ARIA o nieprawidłowych nazwach. [Więcej informacji o prawidłowych atrybutach ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-valid-attr)"
  },
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
    "message": "Atrybuty `[aria-*]` są nieprawidłowe lub są w nich literówki"
  },
  "core/audits/accessibility/aria-valid-attr.js | title": {
    "message": "Atrybuty `[aria-*]` są prawidłowe i nie ma w nich literówek"
  },
  "core/audits/accessibility/axe-audit.js | failingElementsHeader": {
    "message": "Nieprawidłowe elementy"
  },
  "core/audits/accessibility/button-name.js | description": {
    "message": "Gdy przycisk nie ma nazwy na potrzeby ułatwień dostępu, czytniki ekranu określają go jako „przycisk”, przez co jest on bezużyteczny dla ich użytkowników. [Jak ułatwić dostęp do przycisków](https://dequeuniversity.com/rules/axe/4.11/button-name)"
  },
  "core/audits/accessibility/button-name.js | failureTitle": {
    "message": "Przyciski nie mają nazw dostępnych dla czytników ekranu"
  },
  "core/audits/accessibility/button-name.js | title": {
    "message": "Przyciski mają nazwy dostępne dla czytników ekranu"
  },
  "core/audits/accessibility/bypass.js | description": {
    "message": "Dodanie sposobu na ominięcie powtarzających się treści ułatwia nawigację na stronie za pomocą klawiatury. [Więcej informacji o blokach omijania](https://dequeuniversity.com/rules/axe/4.11/bypass)"
  },
  "core/audits/accessibility/bypass.js | failureTitle": {
    "message": "Strona nie zawiera nagłówka, linku pomijającego ani regionu orientacyjnego"
  },
  "core/audits/accessibility/bypass.js | title": {
    "message": "Strona zawiera nagłówek, link pomijający lub region orientacyjny"
  },
  "core/audits/accessibility/color-contrast.js | description": {
    "message": "Wielu użytkowników ma problemy z czytaniem tekstu o niskim kontraście. [Jak zapewnić odpowiedni kontrast kolorów](https://dequeuniversity.com/rules/axe/4.11/color-contrast)"
  },
  "core/audits/accessibility/color-contrast.js | failureTitle": {
    "message": "Kolory tła i pierwszego planu mają niewystarczający współczynnik kontrastu."
  },
  "core/audits/accessibility/color-contrast.js | title": {
    "message": "Kolory tła i pierwszego planu mają wystarczający współczynnik kontrastu"
  },
  "core/audits/accessibility/definition-list.js | description": {
    "message": "Gdy listy definicji nie mają właściwej struktury, czytniki ekranu mogą odczytywać je niedokładnie lub błędnie. [Jak tworzyć listy definicji o prawidłowej strukturze](https://dequeuniversity.com/rules/axe/4.11/definition-list)"
  },
  "core/audits/accessibility/definition-list.js | failureTitle": {
    "message": "Elementy `<dl>` nie zawierają tylko właściwie uporządkowanych grup elementów `<dt>` i `<dd>` oraz elementów `<script>`, `<template>` lub `<div>`."
  },
  "core/audits/accessibility/definition-list.js | title": {
    "message": "Elementy `<dl>` zawierają tylko właściwie uporządkowane grupy elementów `<dt>` i `<dd>` oraz elementy `<script>`, `<template>` lub `<div>`."
  },
  "core/audits/accessibility/dlitem.js | description": {
    "message": "Elementy listy definicji (`<dt>` i `<dd>`) muszą znajdować się wewnątrz nadrzędnego elementu `<dl>`, aby czytniki ekranu mogły je poprawnie odczytać. [Jak tworzyć listy definicji o prawidłowej strukturze](https://dequeuniversity.com/rules/axe/4.11/dlitem)"
  },
  "core/audits/accessibility/dlitem.js | failureTitle": {
    "message": "Elementy listy definicji nie znajdują się wewnątrz elementów `<dl>`"
  },
  "core/audits/accessibility/dlitem.js | title": {
    "message": "Elementy listy definicji znajdują się wewnątrz elementów `<dl>`"
  },
  "core/audits/accessibility/document-title.js | description": {
    "message": "Tytuł informuje użytkowników czytnika ekranu o ogólnej zawartości strony, a użytkownicy wyszukiwarki mogą dowiedzieć się z niego, czy strona zawiera szukane informacje. [Więcej informacji o tytułach dokumentów](https://dequeuniversity.com/rules/axe/4.11/document-title)"
  },
  "core/audits/accessibility/document-title.js | failureTitle": {
    "message": "W dokumencie nie ma elementu `<title>`"
  },
  "core/audits/accessibility/document-title.js | title": {
    "message": "Dokument zawiera element `<title>`"
  },
  "core/audits/accessibility/duplicate-id-aria.js | description": {
    "message": "Wartość identyfikatora ARIA musi być unikalna, aby technologie wspomagające nie pominęły innych wystąpień. [Jak naprawić zduplikowane identyfikatory ARIA](https://dequeuniversity.com/rules/axe/4.11/duplicate-id-aria)"
  },
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
    "message": "Identyfikatory ARIA nie są unikalne"
  },
  "core/audits/accessibility/duplicate-id-aria.js | title": {
    "message": "Identyfikatory ARIA są unikalne"
  },
  "core/audits/accessibility/empty-heading.js | description": {
    "message": "Nagłówki bez treści lub z tekstem bez ułatwień dostępu uniemożliwiają użytkownikom czytników ekranu poznanie struktury strony. [Więcej informacji o nagłówkach](https://dequeuniversity.com/rules/axe/4.11/empty-heading)"
  },
  "core/audits/accessibility/empty-heading.js | failureTitle": {
    "message": "Elementy nagłówka nie zawierają treści."
  },
  "core/audits/accessibility/empty-heading.js | title": {
    "message": "Wszystkie elementy nagłówków zawierają treść."
  },
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
    "message": "Technologie wspomagające, takie jak czytniki ekranu, które używają pierwszych, ostatnich lub wszystkich etykiet, mogą błędnie interpretować pola formularzy z wieloma etykietami. [Jak korzystać z etykiet formularzy](https://dequeuniversity.com/rules/axe/4.11/form-field-multiple-labels)"
  },
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
    "message": "Pola formularza mają wiele etykiet"
  },
  "core/audits/accessibility/form-field-multiple-labels.js | title": {
    "message": "Żadne pola formularza nie mają wielu etykiet"
  },
  "core/audits/accessibility/frame-title.js | description": {
    "message": "Tytuły ramek służą użytkownikom czytników ekranu jako opisy zawartości ramek. [Więcej informacji o tytułach ramek](https://dequeuniversity.com/rules/axe/4.11/frame-title)"
  },
  "core/audits/accessibility/frame-title.js | failureTitle": {
    "message": "Element `<frame>` lub `<iframe>` nie ma tytułu"
  },
  "core/audits/accessibility/frame-title.js | title": {
    "message": "Elementy `<frame>` i `<iframe>` mają tytuł"
  },
  "core/audits/accessibility/heading-order.js | description": {
    "message": "Nagłówki w prawidłowej kolejności, które nie pomijają poziomów, odwzorowują semantyczną strukturę strony. Dzięki temu poruszanie się po nich i korzystanie z ich treści za pomocą technologii wspomagających jest łatwiejsze. [Więcej informacji o kolejności nagłówków](https://dequeuniversity.com/rules/axe/4.11/heading-order)"
  },
  "core/audits/accessibility/heading-order.js | failureTitle": {
    "message": "Elementy nagłówków nie pojawiają się w kolejności malejącej"
  },
  "core/audits/accessibility/heading-order.js | title": {
    "message": "Elementy nagłówków pojawiają się w kolejności malejącej"
  },
  "core/audits/accessibility/html-has-lang.js | description": {
    "message": "Jeśli strona nie ma atrybutu `lang`, czytnik ekranu przyjmuje, że strona jest w języku domyślnym, który użytkownik wybrał podczas konfigurowania czytnika. Jeśli strona nie jest w języku domyślnym, czytnik ekranu może niepoprawnie wymawiać tekst strony. [Więcej informacji o atrybucie `lang`](https://dequeuniversity.com/rules/axe/4.11/html-has-lang)"
  },
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
    "message": "Element `<html>` nie ma atrybutu `[lang]`"
  },
  "core/audits/accessibility/html-has-lang.js | title": {
    "message": "Element `<html>` ma atrybut `[lang]`"
  },
  "core/audits/accessibility/html-lang-valid.js | description": {
    "message": "Określenie prawidłowego [języka w formacie BCP 47](https://www.w3.org/International/questions/qa-choosing-language-tags#question) pomaga czytnikom ekranu prawidłowo wymawiać tekst. [Jak korzystać z atrybutu `lang`](https://dequeuniversity.com/rules/axe/4.11/html-lang-valid)"
  },
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
    "message": "Element `<html>` nie ma prawidłowej wartości atrybutu `[lang]`."
  },
  "core/audits/accessibility/html-lang-valid.js | title": {
    "message": "Element `<html>` ma prawidłową wartość atrybutu `[lang]`"
  },
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
    "message": "Jeśli język strony internetowej nie jest jednoznacznie określony, czytnik ekranu może niepoprawnie wypowiadać dostępny na niej tekst. [Więcej informacji o atrybucie `lang`](https://dequeuniversity.com/rules/axe/4.11/html-xml-lang-mismatch)"
  },
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
    "message": "Element `<html>` nie ma atrybutu `[xml:lang]` z tym samym językiem podstawowym co atrybut `[lang]`."
  },
  "core/audits/accessibility/html-xml-lang-mismatch.js | title": {
    "message": "Element `<html>` ma atrybut `[xml:lang]` z tym samym językiem podstawowym co atrybut `[lang]`."
  },
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
    "message": "Linki z tym samym miejscem docelowym powinny mieć ten sam opis, aby użytkownicy mogli łatwiej zrozumieć jego zastosowanie i zdecydować, czy chcą go kliknąć. [Więcej informacji o identycznych linkach](https://dequeuniversity.com/rules/axe/4.11/identical-links-same-purpose)"
  },
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
    "message": "Identyczne linki nie mają tego samego zastosowania."
  },
  "core/audits/accessibility/identical-links-same-purpose.js | title": {
    "message": "Identyczne linki mają to samo zastosowanie."
  },
  "core/audits/accessibility/image-alt.js | description": {
    "message": "Elementy informacyjne powinny mieć krótki, opisowy tekst zastępczy. Elementy dekoracyjne można zignorować, podając pusty atrybut alt. [Więcej informacji o atrybucie `alt`](https://dequeuniversity.com/rules/axe/4.11/image-alt)"
  },
  "core/audits/accessibility/image-alt.js | failureTitle": {
    "message": "Elementy graficzne nie mają atrybutów `[alt]`"
  },
  "core/audits/accessibility/image-alt.js | title": {
    "message": "Elementy graficzne mają atrybuty `[alt]`"
  },
  "core/audits/accessibility/image-redundant-alt.js | description": {
    "message": "Elementy informacyjne powinny mieć krótki, opisowy tekst zastępczy. Tekst zastępczy, który jest taki sam jak tekst znajdujący się obok linku lub obrazu, może być mylący dla użytkowników czytników ekranu, ponieważ zostanie odczytany dwukrotnie. [Więcej informacji o atrybucie `alt`](https://dequeuniversity.com/rules/axe/4.11/image-redundant-alt)"
  },
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
    "message": "Elementy graficzne mają atrybuty `[alt]`, które są nadmiarowym tekstem."
  },
  "core/audits/accessibility/image-redundant-alt.js | title": {
    "message": "Elementy graficzne nie mają atrybutów `[alt]`, które są nadmiarowym tekstem."
  },
  "core/audits/accessibility/input-button-name.js | description": {
    "message": "Dobrze widoczny i wyraźny tekst dodany do przycisków wprowadzania danych może ułatwić użytkownikom czytnika ekranu zrozumienie funkcji danego przycisku. [Więcej informacji o przyciskach wprowadzania danych](https://dequeuniversity.com/rules/axe/4.11/input-button-name)"
  },
  "core/audits/accessibility/input-button-name.js | failureTitle": {
    "message": "Przyciski wprowadzania danych nie mają dobrze widocznego tekstu."
  },
  "core/audits/accessibility/input-button-name.js | title": {
    "message": "Przyciski wprowadzania danych mają dobrze widoczny tekst."
  },
  "core/audits/accessibility/input-image-alt.js | description": {
    "message": "Gdy jako przycisk `<input>` używany jest obraz, warto dodać tekst zastępczy, aby ułatwić użytkownikom czytnika ekranu zrozumienie, do czego ten przycisk służy. [Więcej informacji o tekście alternatywnym obrazu](https://dequeuniversity.com/rules/axe/4.11/input-image-alt)"
  },
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
    "message": "Elementy `<input type=\"image\">` nie mają tekstu `[alt]`"
  },
  "core/audits/accessibility/input-image-alt.js | title": {
    "message": "Elementy `<input type=\"image\">` mają tekst `[alt]`"
  },
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
    "message": "Widoczne etykiety tekstowe, które nie są zgodne z nazwą na potrzeby ułatwień dostępu, mogą być mylące dla użytkowników czytników ekranu. [Więcej informacji o nazwach na potrzeby ułatwień dostępu](https://dequeuniversity.com/rules/axe/4.11/label-content-name-mismatch)"
  },
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
    "message": "Elementy z widocznymi etykietami tekstowymi nie mają pasujących nazw na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/label-content-name-mismatch.js | title": {
    "message": "Elementy z widocznymi etykietami tekstowymi mają pasujące nazwy na potrzeby ułatwień dostępu."
  },
  "core/audits/accessibility/label.js | description": {
    "message": "Etykiety zapewniają prawidłowe odczytywanie kontrolek formularzy przez technologie wspomagające takie jak czytniki ekranu. [Więcej informacji o etykietach elementów formularzy](https://dequeuniversity.com/rules/axe/4.11/label)"
  },
  "core/audits/accessibility/label.js | failureTitle": {
    "message": "Z elementami formularzy nie są powiązane etykiety"
  },
  "core/audits/accessibility/label.js | title": {
    "message": "Z elementami formularzy są powiązane etykiety"
  },
  "core/audits/accessibility/landmark-one-main.js | description": {
    "message": "Główny punkt orientacyjny ułatwia użytkownikom czytników ekranu poruszanie się po stronie internetowej. [Więcej informacji o punktach orientacyjnych](https://dequeuniversity.com/rules/axe/4.11/landmark-one-main)"
  },
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
    "message": "Dokument nie ma głównego punktu orientacyjnego."
  },
  "core/audits/accessibility/landmark-one-main.js | title": {
    "message": "Dokument ma główny punkt orientacyjny."
  },
  "core/audits/accessibility/link-in-text-block.js | description": {
    "message": "Wielu użytkowników ma problemy z czytaniem tekstu o niskim kontraście. Łatwy do odróżnienia tekst linku ma duże znaczenie dla osób niedowidzących. [Więcej informacji o wyróżnianiu linków](https://dequeuniversity.com/rules/axe/4.11/link-in-text-block)"
  },
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
    "message": "Linki można odróżnić głównie na podstawie koloru."
  },
  "core/audits/accessibility/link-in-text-block.js | title": {
    "message": "Linki można odróżnić bez użycia koloru."
  },
  "core/audits/accessibility/link-name.js | description": {
    "message": "Tekst linków (i tekst zastępczy obrazów używanych jako linki), który jest charakterystyczny, unikalny i możliwy do wybrania, ułatwia nawigację użytkownikom czytników ekranu. [Jak ułatwić dostęp do linków](https://dequeuniversity.com/rules/axe/4.11/link-name)"
  },
  "core/audits/accessibility/link-name.js | failureTitle": {
    "message": "Linki nie mają wyróżniających je nazw"
  },
  "core/audits/accessibility/link-name.js | title": {
    "message": "Linki mają wyróżniające je nazwy"
  },
  "core/audits/accessibility/list.js | description": {
    "message": "Czytniki ekranu odczytują listy w specjalny sposób. Właściwa struktura list pomaga czytnikom poprawnie odczytać tekst. [Więcej informacji o odpowiedniej strukturze list](https://dequeuniversity.com/rules/axe/4.11/list)"
  },
  "core/audits/accessibility/list.js | failureTitle": {
    "message": "Listy nie zawierają tylko elementów `<li>` i elementów skryptowych (`<script>` i `<template>`)."
  },
  "core/audits/accessibility/list.js | title": {
    "message": "Listy zawierają tylko elementy `<li>` i elementy skryptowe (`<script>` i `<template>`)."
  },
  "core/audits/accessibility/listitem.js | description": {
    "message": "Elementy list (`<li>`) muszą być zawarte w elementach nadrzędnych `<ul>`, `<ol>` lub `<menu>`, aby czytniki ekranu mogły je poprawnie odczytać. [Więcej informacji o odpowiedniej strukturze list](https://dequeuniversity.com/rules/axe/4.11/listitem)"
  },
  "core/audits/accessibility/listitem.js | failureTitle": {
    "message": "Elementy list (`<li>`) nie znajdują się wewnątrz elementów nadrzędnych `<ul>`, `<ol>` lub `<menu>`."
  },
  "core/audits/accessibility/listitem.js | title": {
    "message": "Elementy list (`<li>`) znajdują się wewnątrz elementów nadrzędnych `<ul>`, `<ol>` lub `<menu>`"
  },
  "core/audits/accessibility/meta-refresh.js | description": {
    "message": "Użytkownicy nie spodziewają się automatycznego odświeżania strony – powoduje ono powrót zaznaczenia na jej początek. Może to dezorientować i irytować użytkowników. [Więcej informacji o metatagu odświeżania](https://dequeuniversity.com/rules/axe/4.11/meta-refresh)"
  },
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
    "message": "Dokument używa tagu `<meta http-equiv=\"refresh\">`"
  },
  "core/audits/accessibility/meta-refresh.js | title": {
    "message": "Dokument nie używa tagu `<meta http-equiv=\"refresh\">`"
  },
  "core/audits/accessibility/meta-viewport.js | description": {
    "message": "Wyłączenie powiększania to problem dla użytkowników niedowidzących, którzy muszą korzystać z powiększenia ekranu, aby dobrze widzieć zawartość stron internetowych. [Więcej informacji o metatagu viewport](https://dequeuniversity.com/rules/axe/4.11/meta-viewport)"
  },
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
    "message": "W elemencie `<meta name=\"viewport\">` jest używany atrybut `[user-scalable=\"no\"]` lub atrybut `[maximum-scale]` ma wartość mniejszą niż 5."
  },
  "core/audits/accessibility/meta-viewport.js | title": {
    "message": "W elemencie `<meta name=\"viewport\">` nie jest używany atrybut `[user-scalable=\"no\"]`, a atrybut `[maximum-scale]` ma wartość nie mniejszą niż 5."
  },
  "core/audits/accessibility/object-alt.js | description": {
    "message": "Czytniki ekranu nie potrafią tłumaczyć treści innych niż tekst. Dodanie do elementów `<object>` tekstu zastępczego pomaga czytnikom ekranu w przekazywaniu użytkownikom właściwego znaczenia. [Więcej informacji o tekście alternatywnym elementów `object`](https://dequeuniversity.com/rules/axe/4.11/object-alt)"
  },
  "core/audits/accessibility/object-alt.js | failureTitle": {
    "message": "Elementy `<object>` nie mają tekstu zastępczego"
  },
  "core/audits/accessibility/object-alt.js | title": {
    "message": "Elementy `<object>` mają tekst zastępczy"
  },
  "core/audits/accessibility/select-name.js | description": {
    "message": "Elementy formularzy bez odpowiednich etykiet mogą utrudniać korzystanie z witryny użytkownikom czytników ekranu. [Więcej informacji o elemencie `select`](https://dequeuniversity.com/rules/axe/4.11/select-name)"
  },
  "core/audits/accessibility/select-name.js | failureTitle": {
    "message": "Elementy do wybrania nie mają powiązanych z nimi elementów etykiet."
  },
  "core/audits/accessibility/select-name.js | title": {
    "message": "Elementy do wybrania mają powiązane z nimi elementy etykiet."
  },
  "core/audits/accessibility/skip-link.js | description": {
    "message": "Dołączenie linku pomijania może pomóc użytkownikom szybciej przechodzić do głównej treści. [Więcej informacji o linkach pomijania](https://dequeuniversity.com/rules/axe/4.11/skip-link)"
  },
  "core/audits/accessibility/skip-link.js | failureTitle": {
    "message": "Linków pomijania nie można zaznaczyć."
  },
  "core/audits/accessibility/skip-link.js | title": {
    "message": "Linki pomijania można zaznaczać."
  },
  "core/audits/accessibility/tabindex.js | description": {
    "message": "Wartość większa niż 0 implikuje określoną wprost kolejność nawigacji. Chociaż takie rozwiązanie jest technicznie poprawne, często powoduje frustrację użytkowników technologii wspomagających. [Więcej informacji o atrybucie `tabindex`](https://dequeuniversity.com/rules/axe/4.11/tabindex)"
  },
  "core/audits/accessibility/tabindex.js | failureTitle": {
    "message": "Niektóre elementy mają atrybut `[tabindex]` o wartości większej niż 0"
  },
  "core/audits/accessibility/tabindex.js | title": {
    "message": "Żaden element nie ma wartości atrybutu `[tabindex]` większej niż 0"
  },
  "core/audits/accessibility/table-duplicate-name.js | description": {
    "message": "Atrybut podsumowania powinien opisywać strukturę tabeli, a element `<caption>` powinien mieć tytuł ekranowy. Dokładne znaczniki tabeli pomagają użytkownikom czytników ekranu. [Więcej informacji o podsumowaniu i napisach](https://dequeuniversity.com/rules/axe/4.11/table-duplicate-name)"
  },
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
    "message": "Tabele zawierają tę samą treść w atrybucie podsumowania i w elemencie `<caption>.`."
  },
  "core/audits/accessibility/table-duplicate-name.js | title": {
    "message": "Tabele mają różne treści w atrybucie podsumowania i w elemencie `<caption>`."
  },
  "core/audits/accessibility/table-fake-caption.js | description": {
    "message": "Czytniki ekranu mają funkcje, które ułatwiają nawigację w tabelach. Aby poprawić wrażenia użytkowników czytnika ekranu, w tabelach używaj rzeczywistego elementu podpisu zamiast komórek z atrybutem `[colspan]`. [Więcej informacji o podpisach](https://dequeuniversity.com/rules/axe/4.11/table-fake-caption)"
  },
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
    "message": "Do wskazywania podpisu tabele nie używają tagu `<caption>` zamiast komórek z atrybutem `[colspan]`."
  },
  "core/audits/accessibility/table-fake-caption.js | title": {
    "message": "Do wskazywania podpisu tabele używają elementu `<caption>` zamiast komórek z atrybutem `[colspan]`."
  },
  "core/audits/accessibility/target-size.js | description": {
    "message": "Docelowe elementy dotykowe o odpowiedniej wielkości i z właściwymi odstępami są ważne dla użytkowników, którzy mają trudności z aktywowaniem niewielkich elementów sterujących. [Więcej informacji o docelowych elementach dotykowych](https://dequeuniversity.com/rules/axe/4.11/target-size)"
  },
  "core/audits/accessibility/target-size.js | failureTitle": {
    "message": "Docelowe elementy dotykowe nie mają odpowiedniej wielkości lub właściwych odstępów."
  },
  "core/audits/accessibility/target-size.js | title": {
    "message": "Docelowe elementy dotykowe mają odpowiednią wielkość i właściwe odstępy."
  },
  "core/audits/accessibility/td-has-header.js | description": {
    "message": "Czytniki ekranu mają funkcje, które ułatwiają nawigację w tabelach. Aby poprawić wrażenia użytkowników czytnika ekranu, zadbaj o to, żeby elementy `<td>` w dużej tabeli (wysokiej i szerokiej na co najmniej 3 komórki) miały powiązany nagłówek tabeli. [Więcej informacji o nagłówkach tabel](https://dequeuniversity.com/rules/axe/4.11/td-has-header)"
  },
  "core/audits/accessibility/td-has-header.js | failureTitle": {
    "message": "Elementy `<td>` w dużym elemencie `<table>` nie mają nagłówków tabel."
  },
  "core/audits/accessibility/td-has-header.js | title": {
    "message": "Elementy `<td>` w dużym elemencie `<table>` mają co najmniej 1 nagłówek tabeli."
  },
  "core/audits/accessibility/td-headers-attr.js | description": {
    "message": "Czytniki ekranu mają funkcje, które ułatwiają nawigację w tabelach. Gdy komórki `<td>` używające atrybutu `[headers]` odwołują się tylko do innych komórek w tej samej tabeli, użytkownicy czytników ekranu mogą wygodniej korzystać z tabel. [Więcej informacji o atrybucie `headers`](https://dequeuniversity.com/rules/axe/4.11/td-headers-attr)"
  },
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
    "message": "Komórki w elemencie `<table>`, które używają atrybutu `[headers]`, odwołują się do elementu `id`, którego nie znaleziono w tej samej tabeli."
  },
  "core/audits/accessibility/td-headers-attr.js | title": {
    "message": "Komórki w elemencie `<table>`, które używają atrybutu `[headers]`, odwołują się do komórek w tej samej tabeli."
  },
  "core/audits/accessibility/th-has-data-cells.js | description": {
    "message": "Czytniki ekranu mają funkcje, które ułatwiają nawigację w tabelach. Gdy nagłówki tabel zawsze odwołują się do jakiegoś zbioru komórek, użytkownicy czytników ekranu mogą wygodniej korzystać z tabel. [Więcej informacji o nagłówkach tabel](https://dequeuniversity.com/rules/axe/4.11/th-has-data-cells)"
  },
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
    "message": "Nie istnieją komórki danych opisywane przez elementy `<th>` i elementy z atrybutem `[role=\"columnheader\"/\"rowheader\"]`."
  },
  "core/audits/accessibility/th-has-data-cells.js | title": {
    "message": "Istnieją komórki danych opisywane przez elementy `<th>` i elementy z atrybutem `[role=\"columnheader\"/\"rowheader\"]`."
  },
  "core/audits/accessibility/valid-lang.js | description": {
    "message": "Określenie w elementach prawidłowego [tagu języka w formacie BCP 47](https://www.w3.org/International/questions/qa-choosing-language-tags#question) pomaga zapewnić prawidłową wymowę tekstu przez czytnik ekranu. [Jak korzystać z atrybutu `lang`](https://dequeuniversity.com/rules/axe/4.11/valid-lang)"
  },
  "core/audits/accessibility/valid-lang.js | failureTitle": {
    "message": "Atrybuty `[lang]` nie mają prawidłowej wartości"
  },
  "core/audits/accessibility/valid-lang.js | title": {
    "message": "Atrybuty `[lang]` mają prawidłową wartość"
  },
  "core/audits/accessibility/video-caption.js | description": {
    "message": "Filmy z napisami są bardziej dostępne dla osób niesłyszących i niedosłyszących. [Więcej informacji o napisach do filmów](https://dequeuniversity.com/rules/axe/4.11/video-caption)"
  },
  "core/audits/accessibility/video-caption.js | failureTitle": {
    "message": "Elementy `<video>` nie zawierają elementu `<track>` z atrybutem `[kind=\"captions\"]`."
  },
  "core/audits/accessibility/video-caption.js | title": {
    "message": "Elementy `<video>` zawierają element `<track>` z atrybutem `[kind=\"captions\"]`"
  },
  "core/audits/autocomplete.js | columnCurrent": {
    "message": "Bieżąca wartość"
  },
  "core/audits/autocomplete.js | columnSuggestions": {
    "message": "Sugerowany token"
  },
  "core/audits/autocomplete.js | description": {
    "message": "Atrybut `autocomplete` ułatwia użytkownikom szybkie wypełnianie formularzy. Aby pomóc użytkownikom, ustaw prawidłową wartość atrybutu `autocomplete`. [Więcej informacji o atrybucie `autocomplete` w formularzach](https://developers.google.com/web/fundamentals/design-and-ux/input/forms#use_metadata_to_enable_auto-complete)"
  },
  "core/audits/autocomplete.js | failureTitle": {
    "message": "Elementy `<input>` nie mają prawidłowych atrybutów `autocomplete`"
  },
  "core/audits/autocomplete.js | manualReview": {
    "message": "Wymaga ręcznego sprawdzenia"
  },
  "core/audits/autocomplete.js | reviewOrder": {
    "message": "Sprawdź kolejność tokenów"
  },
  "core/audits/autocomplete.js | title": {
    "message": "Elementy `<input>` prawidłowo wykorzystują `autocomplete`"
  },
  "core/audits/autocomplete.js | warningInvalid": {
    "message": "Token(y) `autocomplete`: „{token}” jest nieprawidłowy w {snippet}"
  },
  "core/audits/autocomplete.js | warningOrder": {
    "message": "Sprawdź kolejność tokenów: „{tokens}” w {snippet}"
  },
  "core/audits/bf-cache.js | actionableFailureType": {
    "message": "Wymagające wykonania czynności"
  },
  "core/audits/bf-cache.js | description": {
    "message": "Wiele elementów nawigacyjnych prowadzi do poprzedniej lub kolejnej strony. Pamięć podręczna stanu strony internetowej (bfcache) może przyspieszyć powrót na poprzednią stronę. [Dowiedz się więcej o pamięci podręcznej stanu strony internetowej](https://developer.chrome.com/docs/lighthouse/performance/bf-cache/)"
  },
  "core/audits/bf-cache.js | displayValue": {
    "message": "{itemCount,plural, =1{1 przyczyna niepowodzenia}few{# przyczyny niepowodzenia}many{# przyczyn niepowodzenia}other{# przyczyny niepowodzenia}}"
  },
  "core/audits/bf-cache.js | failureReasonColumn": {
    "message": "Przyczyna niepowodzenia"
  },
  "core/audits/bf-cache.js | failureTitle": {
    "message": "Strona uniemożliwiła przywrócenie pamięci podręcznej stanu strony internetowej"
  },
  "core/audits/bf-cache.js | failureTypeColumn": {
    "message": "Rodzaj błędu"
  },
  "core/audits/bf-cache.js | notActionableFailureType": {
    "message": "Nie umożliwiające wykonania czynności"
  },
  "core/audits/bf-cache.js | supportPendingFailureType": {
    "message": "Oczekiwanie na obsługę przeglądarki"
  },
  "core/audits/bf-cache.js | title": {
    "message": "Strona nie uniemożliwiła przywrócenia pamięci podręcznej stanu strony internetowej"
  },
  "core/audits/bf-cache.js | warningHeadless": {
    "message": "W starej wersji Chrome bez interfejsu graficznego (`--chrome-flags=\"--headless=old\"`) nie można przetestować pamięci podręcznej stanu strony internetowej. Aby zobaczyć wyniki kontroli, użyj nowej wersji Chrome bez interfejsu graficznego (`--chrome-flags=\"--headless=new\"`) lub wersji standardowej Chrome."
  },
  "core/audits/bootup-time.js | chromeExtensionsWarning": {
    "message": "Rozszerzenia Chrome pogorszyły szybkość ładowania tej strony. Przeprowadź audyt strony w trybie incognito lub w profilu Chrome bez rozszerzeń."
  },
  "core/audits/bootup-time.js | columnScriptEval": {
    "message": "Ocena skryptu"
  },
  "core/audits/bootup-time.js | columnScriptParse": {
    "message": "Analiza skryptów"
  },
  "core/audits/bootup-time.js | columnTotal": {
    "message": "Łączny czas pracy procesora"
  },
  "core/audits/bootup-time.js | description": {
    "message": "Pomyśl o skróceniu czasu poświęcanego na analizowanie, kompilowanie i wykonywanie kodu JS. Może w tym pomóc dostarczanie mniejszych ładunków JS. [Jak skrócić czas wykonywania kodu JavaScript](https://developer.chrome.com/docs/lighthouse/performance/bootup-time/)"
  },
  "core/audits/bootup-time.js | failureTitle": {
    "message": "Skróć czas wykonywania JavaScriptu"
  },
  "core/audits/bootup-time.js | title": {
    "message": "Czas wykonania JavaScriptu"
  },
  "core/audits/byte-efficiency/total-byte-weight.js | description": {
    "message": "Duże ładunki sieciowe powodują wyższe koszty dla użytkowników i są mocno powiązane z długim czasem ładowania. [Jak zmniejszyć ładunki](https://developer.chrome.com/docs/lighthouse/performance/total-byte-weight/)"
  },
  "core/audits/byte-efficiency/total-byte-weight.js | displayValue": {
    "message": "Łączny rozmiar to {totalBytes, number, bytes} KiB"
  },
  "core/audits/byte-efficiency/total-byte-weight.js | failureTitle": {
    "message": "Unikaj bardzo dużych ładunków sieciowych"
  },
  "core/audits/byte-efficiency/total-byte-weight.js | title": {
    "message": "Unikaj bardzo dużych ładunków sieciowych"
  },
  "core/audits/byte-efficiency/unminified-css.js | description": {
    "message": "Minifikacja plików CSS może zmniejszyć ładunki sieciowe. [Jak zmniejszać pliki CSS](https://developer.chrome.com/docs/lighthouse/performance/unminified-css/)"
  },
  "core/audits/byte-efficiency/unminified-css.js | title": {
    "message": "Minifikuj CSS"
  },
  "core/audits/byte-efficiency/unminified-javascript.js | description": {
    "message": "Minifikacja plików JavaScript może zmniejszyć ładunki i skrócić czas analizowania skryptów. [Jak minifikować kod JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unminified-javascript/)"
  },
  "core/audits/byte-efficiency/unminified-javascript.js | title": {
    "message": "Minifikuj JavaScript"
  },
  "core/audits/byte-efficiency/unused-css-rules.js | description": {
    "message": "Ogranicz nieużywane reguły z arkuszy stylów i opóźnij ładowanie kodu CSS, który nie jest używany w części strony widocznej na ekranie. W ten sposób zmniejszysz ilość danych przesyłanych w sieci. [Jak ograniczyć ilość nieużywanego kodu CSS](https://developer.chrome.com/docs/lighthouse/performance/unused-css-rules/)"
  },
  "core/audits/byte-efficiency/unused-css-rules.js | title": {
    "message": "Ogranicz nieużywany kod CSS"
  },
  "core/audits/byte-efficiency/unused-javascript.js | description": {
    "message": "Ogranicz nieużywany JavaScript i opóźnij ładowanie skryptów do momentu, aż będą wymagane. W ten sposób zmniejszysz ilość danych przesyłanych w sieci. [Jak zmniejszyć ilość nieużywanego kodu JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/)"
  },
  "core/audits/byte-efficiency/unused-javascript.js | title": {
    "message": "Ogranicz nieużywany JavaScript"
  },
  "core/audits/clickjacking-mitigation.js | columnSeverity": {
    "message": "Waga"
  },
  "core/audits/clickjacking-mitigation.js | description": {
    "message": "Nagłówek `X-Frame-Options` (XFO) lub dyrektywa `frame-ancestors` w nagłówku `Content-Security-Policy` (CSP) określają, gdzie można umieścić stronę. Mogą one ograniczyć ataki typu clickjacking, blokując możliwość umieszczenia strony w niektórych lub wszystkich witrynach. [Więcej informacji o zmniejszaniu ryzyka ataku typu clickjacking](https://developer.chrome.com/docs/lighthouse/best-practices/clickjacking-mitigation)"
  },
  "core/audits/clickjacking-mitigation.js | noClickjackingMitigation": {
    "message": "Nie znaleziono zasad kontroli ramki"
  },
  "core/audits/clickjacking-mitigation.js | title": {
    "message": "Ogranicz ataki typu clickjacking za pomocą XFO lub CSP"
  },
  "core/audits/csp-xss.js | columnDirective": {
    "message": "Dyrektywa"
  },
  "core/audits/csp-xss.js | columnSeverity": {
    "message": "Waga"
  },
  "core/audits/csp-xss.js | description": {
    "message": "Ścisłe przestrzeganie standardu Content Security Policy (CSP) znacznie zmniejsza ryzyko ataków typu cross-site scripting (XSS). [Jak zapobiegać atakom XSS za pomocą standardu CSP](https://developer.chrome.com/docs/lighthouse/best-practices/csp-xss/)"
  },
  "core/audits/csp-xss.js | itemSeveritySyntax": {
    "message": "Składnia"
  },
  "core/audits/csp-xss.js | metaTagMessage": {
    "message": "Strona zawiera definicję CSP w tagu `<meta>`. Zastanów się nad przeniesieniem CSP do nagłówka HTTP lub zdefiniowaniem innego CSP w nagłówku HTTP."
  },
  "core/audits/csp-xss.js | noCsp": {
    "message": "W trybie egzekwowania nie znaleziono CSP"
  },
  "core/audits/csp-xss.js | title": {
    "message": "Skonfiguruj CSP pod kątem ochrony przed atakami typu XSS"
  },
  "core/audits/deprecations.js | columnDeprecate": {
    "message": "Wycofanie/ostrzeżenie"
  },
  "core/audits/deprecations.js | columnLine": {
    "message": "Wiersz"
  },
  "core/audits/deprecations.js | description": {
    "message": "Wycofane interfejsy API zostaną w przyszłości usunięte z przeglądarki. [Więcej informacji o wycofanych interfejsach API](https://developer.chrome.com/docs/lighthouse/best-practices/deprecations/)"
  },
  "core/audits/deprecations.js | displayValue": {
    "message": "{itemCount,plural, =1{Znaleziono 1 ostrzeżenie}few{Znaleziono # ostrzeżenia}many{Znaleziono # ostrzeżeń}other{Znaleziono # ostrzeżenia}}"
  },
  "core/audits/deprecations.js | failureTitle": {
    "message": "Używa wycofanych interfejsów API"
  },
  "core/audits/deprecations.js | title": {
    "message": "Nie używa wycofanych interfejsów API"
  },
  "core/audits/dobetterweb/charset.js | description": {
    "message": "Wymagana jest deklaracja kodowania znaków. Możesz ją dodać za pomocą tagu `<meta>` w pierwszych 1024 bajtach kodu HTML lub w nagłówku odpowiedzi HTTP Content-Type. [Więcej informacji o deklarowaniu kodowania znaków](https://developer.chrome.com/docs/lighthouse/best-practices/charset/)"
  },
  "core/audits/dobetterweb/charset.js | failureTitle": {
    "message": "Brakuje deklaracji zestawu znaków lub występuje ona zbyt późno w kodzie HTML"
  },
  "core/audits/dobetterweb/charset.js | title": {
    "message": "Prawidłowo definiuje zestaw znaków"
  },
  "core/audits/dobetterweb/doctype.js | description": {
    "message": "Podanie definicji doctype zapobiega przełączaniu przeglądarki w tryb osobliwości. [Więcej informacji o deklaracji doctype](https://developer.chrome.com/docs/lighthouse/best-practices/doctype/)"
  },
  "core/audits/dobetterweb/doctype.js | explanationBadDoctype": {
    "message": "Nazwa formatu doctype musi być ciągiem `html`"
  },
  "core/audits/dobetterweb/doctype.js | explanationLimitedQuirks": {
    "message": "Dokument zawiera element `doctype` wywołujący `limited-quirks-mode`"
  },
  "core/audits/dobetterweb/doctype.js | explanationNoDoctype": {
    "message": "Dokument musi zawierać deklarację doctype"
  },
  "core/audits/dobetterweb/doctype.js | explanationPublicId": {
    "message": "Oczekiwano pustego ciągu w polu publicId"
  },
  "core/audits/dobetterweb/doctype.js | explanationSystemId": {
    "message": "Oczekiwano pustego ciągu w polu systemId"
  },
  "core/audits/dobetterweb/doctype.js | explanationWrongDoctype": {
    "message": "Dokument zawiera element `doctype` wywołujący `quirks-mode`"
  },
  "core/audits/dobetterweb/doctype.js | failureTitle": {
    "message": "Strona nie zawiera elementu HTML doctype, przez co aktywuje tryb osobliwości"
  },
  "core/audits/dobetterweb/doctype.js | title": {
    "message": "Strona ma deklarację doctype HTML"
  },
  "core/audits/dobetterweb/geolocation-on-start.js | description": {
    "message": "Witryny, które bez kontekstu pytają o zgodę na dostęp do lokalizacji, nie budzą zaufania użytkowników lub ich dezorientują. Sugerujemy powiązanie wyświetlenia tej prośby z działaniem użytkownika. [Więcej informacji o uprawnieniach do geolokalizacji](https://developer.chrome.com/docs/lighthouse/best-practices/geolocation-on-start/)"
  },
  "core/audits/dobetterweb/geolocation-on-start.js | failureTitle": {
    "message": "Pyta o zgodę na geolokalizację podczas wczytywania strony"
  },
  "core/audits/dobetterweb/geolocation-on-start.js | title": {
    "message": "Nie pyta o zgodę na geolokalizację podczas wczytywania strony"
  },
  "core/audits/dobetterweb/inspector-issues.js | columnIssueType": {
    "message": "Typ problemu"
  },
  "core/audits/dobetterweb/inspector-issues.js | description": {
    "message": "Informacje zarejestrowane w panelu `Issues` w Narzędziach deweloperskich Chrome wskazują na nierozwiązane problemy. Mogą być spowodowane nieudanymi żądaniami sieciowymi, niewystarczającymi zabezpieczeniami i innymi problemami w przeglądarce. Otwórz panel Issues (Problemy) w Narzędziach deweloperskich Chrome, aby dowiedzieć się więcej o poszczególnych problemach."
  },
  "core/audits/dobetterweb/inspector-issues.js | failureTitle": {
    "message": "Problemy zostały zarejestrowane w panelu `Issues` w Narzędziach deweloperskich Chrome"
  },
  "core/audits/dobetterweb/inspector-issues.js | issueTypeBlockedByResponse": {
    "message": "Zablokowany przez zasadę dotyczącą zasobów z innych domen"
  },
  "core/audits/dobetterweb/inspector-issues.js | issueTypeHeavyAds": {
    "message": "Bardzo duże wykorzystanie zasobów przez reklamy"
  },
  "core/audits/dobetterweb/inspector-issues.js | title": {
    "message": "Brak problemów w panelu `Issues` w Narzędziach deweloperskich Chrome"
  },
  "core/audits/dobetterweb/js-libraries.js | columnVersion": {
    "message": "Wersja"
  },
  "core/audits/dobetterweb/js-libraries.js | description": {
    "message": "Wszystkie biblioteki JavaScript interfejsu użytkownika wykryte na stronie. [Więcej informacji o tej kontroli diagnostycznej wykrywania biblioteki JavaScript](https://developer.chrome.com/docs/lighthouse/best-practices/js-libraries/)"
  },
  "core/audits/dobetterweb/js-libraries.js | title": {
    "message": "Wykryte biblioteki JavaScript"
  },
  "core/audits/dobetterweb/notification-on-start.js | description": {
    "message": "Witryny, które bez kontekstu pytają o zgodę na wyświetlanie powiadomień, nie budzą zaufania użytkowników lub ich dezorientują. Sugerujemy powiązanie wyświetlenia tej prośby z gestami użytkownika. [Więcej informacji o odpowiedzialnym uzyskiwaniu uprawnień do wyświetlania powiadomień](https://developer.chrome.com/docs/lighthouse/best-practices/notification-on-start/)"
  },
  "core/audits/dobetterweb/notification-on-start.js | failureTitle": {
    "message": "Pyta o zgodę na wyświetlanie powiadomień podczas wczytywania strony"
  },
  "core/audits/dobetterweb/notification-on-start.js | title": {
    "message": "Nie pyta o zgodę na wyświetlanie powiadomień podczas wczytywania strony"
  },
  "core/audits/dobetterweb/paste-preventing-inputs.js | description": {
    "message": "W przypadku UX zapobieganie wklejaniu danych wejściowych to zła praktyka, która na dodatek zmniejsza bezpieczeństwo, blokując menedżery haseł. [Więcej informacji o łatwych w użyciu polach do wprowadzania danych](https://developer.chrome.com/docs/lighthouse/best-practices/paste-preventing-inputs/)"
  },
  "core/audits/dobetterweb/paste-preventing-inputs.js | failureTitle": {
    "message": "Uniemożliwia użytkownikom wklejanie w polach do wprowadzania danych"
  },
  "core/audits/dobetterweb/paste-preventing-inputs.js | title": {
    "message": "Zezwala użytkownikom na wklejanie w polach do wprowadzania danych"
  },
  "core/audits/errors-in-console.js | description": {
    "message": "Błędy zarejestrowane w konsoli wskazują na nierozwiązane problemy. Mogą być spowodowane nieudanymi żądaniami sieciowymi i innymi problemami w przeglądarce. [Więcej informacji o błędach podczas kontroli diagnostycznej konsoli](https://developer.chrome.com/docs/lighthouse/best-practices/errors-in-console/)"
  },
  "core/audits/errors-in-console.js | failureTitle": {
    "message": "Błędy przeglądarki zostały zarejestrowane w konsoli"
  },
  "core/audits/errors-in-console.js | title": {
    "message": "W konsoli nie zostały zarejestrowane żadne błędy przeglądarki"
  },
  "core/audits/has-hsts.js | columnDirective": {
    "message": "Dyrektywa"
  },
  "core/audits/has-hsts.js | columnSeverity": {
    "message": "Waga"
  },
  "core/audits/has-hsts.js | description": {
    "message": "Wdrożenie nagłówka HSTS znacznie zmniejsza ryzyko obniżenia poziomu zabezpieczeń połączeń HTTP i przeprowadzenia ataków polegających na podsłuchiwaniu. Zalecamy stopniowe wdrażanie z niską wartością max-age na początku. [Więcej informacji o używaniu silnej zasady HSTS](https://developer.chrome.com/docs/lighthouse/best-practices/has-hsts)"
  },
  "core/audits/has-hsts.js | invalidSyntax": {
    "message": "Nieprawidłowa składnia"
  },
  "core/audits/has-hsts.js | lowMaxAge": {
    "message": "Wartość `max-age` jest za niska"
  },
  "core/audits/has-hsts.js | noHsts": {
    "message": "Nie znaleziono nagłówka HSTS"
  },
  "core/audits/has-hsts.js | noMaxAge": {
    "message": "Brak dyrektywy `max-age`"
  },
  "core/audits/has-hsts.js | noPreload": {
    "message": "Nie znaleziono dyrektywy `preload`"
  },
  "core/audits/has-hsts.js | noSubdomain": {
    "message": "Nie znaleziono dyrektywy `includeSubDomains`"
  },
  "core/audits/has-hsts.js | title": {
    "message": "Używaj silnej zasady HSTS"
  },
  "core/audits/image-aspect-ratio.js | columnActual": {
    "message": "Współczynnik proporcji (rzeczywisty)"
  },
  "core/audits/image-aspect-ratio.js | columnDisplayed": {
    "message": "Współczynnik proporcji (wyświetlany)"
  },
  "core/audits/image-aspect-ratio.js | description": {
    "message": "Wymiary wyświetlanego obrazu muszą odpowiadać naturalnemu współczynnikowi proporcji. [Więcej informacji o współczynniku proporcji obrazu](https://developer.chrome.com/docs/lighthouse/best-practices/image-aspect-ratio/)"
  },
  "core/audits/image-aspect-ratio.js | failureTitle": {
    "message": "Wyświetla obrazy o niepoprawnym współczynniku proporcji"
  },
  "core/audits/image-aspect-ratio.js | title": {
    "message": "Wyświetla obrazy o poprawnym współczynniku proporcji"
  },
  "core/audits/image-size-responsive.js | columnActual": {
    "message": "Rozmiar rzeczywisty"
  },
  "core/audits/image-size-responsive.js | columnDisplayed": {
    "message": "Rozmiar wyświetlany"
  },
  "core/audits/image-size-responsive.js | columnExpected": {
    "message": "Rozmiar oczekiwany"
  },
  "core/audits/image-size-responsive.js | description": {
    "message": "Aby obraz był maksymalnie wyraźny, jego naturalne wymiary powinny być zgodne z rozmiarem i rozdzielczością ekranu. [Jak przesyłać obrazy elastyczne](https://web.dev/articles/serve-responsive-images)"
  },
  "core/audits/image-size-responsive.js | failureTitle": {
    "message": "Wyświetla obrazy w niskiej rozdzielczości"
  },
  "core/audits/image-size-responsive.js | title": {
    "message": "Wyświetla obrazy w odpowiedniej rozdzielczości"
  },
  "core/audits/insights/cls-culprits-insight.js | columnScore": {
    "message": "Wynik przesunięcia układu"
  },
  "core/audits/is-on-https.js | allowed": {
    "message": "Dozwolony"
  },
  "core/audits/is-on-https.js | blocked": {
    "message": "Zablokowany"
  },
  "core/audits/is-on-https.js | columnInsecureURL": {
    "message": "Niezabezpieczony URL"
  },
  "core/audits/is-on-https.js | columnResolution": {
    "message": "Obsługa żądań"
  },
  "core/audits/is-on-https.js | description": {
    "message": "Wszystkie witryny powinny być zabezpieczone przy użyciu HTTPS – również te, które nie obsługują danych wrażliwych. Dotyczy to również unikania [treści mieszanej](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content), jeśli część zasobów wczytuje się przez HTTP, mimo że wstępne żądanie używa HTTPS. HTTPS uniemożliwia intruzom modyfikowanie i podsłuchiwanie komunikacji między aplikacją a użytkownikami. HTTP/2 i liczne nowe interfejsy API platformy WWW wymagają używania HTTPS. [Więcej informacji o protokole HTTPS](https://developer.chrome.com/docs/lighthouse/pwa/is-on-https/)"
  },
  "core/audits/is-on-https.js | displayValue": {
    "message": "{itemCount,plural, =1{Wykryto 1 niezabezpieczone żądanie}few{Wykryto # niezabezpieczone żądania}many{Wykryto # niezabezpieczonych żądań}other{Wykryto # niezabezpieczonego żądania}}"
  },
  "core/audits/is-on-https.js | failureTitle": {
    "message": "Nie używa HTTPS"
  },
  "core/audits/is-on-https.js | title": {
    "message": "Używa HTTPS"
  },
  "core/audits/is-on-https.js | upgraded": {
    "message": "Automatycznie uaktualniony do HTTPS"
  },
  "core/audits/is-on-https.js | warning": {
    "message": "Dozwolony z ostrzeżeniem"
  },
  "core/audits/layout-shifts.js | columnScore": {
    "message": "Wynik przesunięcia układu"
  },
  "core/audits/layout-shifts.js | description": {
    "message": "To są największe przesunięcia układu zaobserwowane na stronie. Każdy element tabeli przedstawia jedno przesunięcie układu i pokazuje element, który przesunął się najbardziej. Pod każdym elementem znajdziesz listę możliwych głównych przyczyn, które doprowadziły do przesunięcia układu. Niektóre z tych przesunięć układu mogą nie być uwzględnione w wartości danych CLS z powodu [okienkowania](https://web.dev/articles/cls#what_is_cls). [Dowiedz się, jak poprawić wartość CLS](https://web.dev/articles/optimize-cls)"
  },
  "core/audits/layout-shifts.js | displayValueShiftsFound": {
    "message": "{shiftCount,plural, =1{Znaleziono 1 przesunięcie układu}few{Znaleziono # przesunięcia układu}many{Znaleziono # przesunięć układu}other{Znaleziono # przesunięcia układu}}"
  },
  "core/audits/layout-shifts.js | rootCauseFontChanges": {
    "message": "Czcionka internetowa została wczytana"
  },
  "core/audits/layout-shifts.js | rootCauseInjectedIframe": {
    "message": "Wstrzyknięty element iframe"
  },
  "core/audits/layout-shifts.js | rootCauseUnsizedMedia": {
    "message": "Element multimedialny nie ma wyraźnego rozmiaru"
  },
  "core/audits/layout-shifts.js | title": {
    "message": "Unikaj dużych przesunięć układu"
  },
  "core/audits/long-tasks.js | description": {
    "message": "Pokazuje najdłuższe zadania na liście w wątku głównym. Służy do rozpoznawania czynników, które mają największy wpływ na opóźnienia działania. [Jak unikać długich zadań w wątku głównym](https://web.dev/articles/optimize-long-tasks)"
  },
  "core/audits/long-tasks.js | displayValue": {
    "message": "{itemCount,plural, =1{Znaleziono # długie zadanie}few{Znaleziono # długie zadania}many{Znaleziono # długich zadań}other{Znaleziono # długiego zadania}}"
  },
  "core/audits/long-tasks.js | title": {
    "message": "Unikaj długich zadań w wątku głównym"
  },
  "core/audits/mainthread-work-breakdown.js | columnCategory": {
    "message": "Kategoria"
  },
  "core/audits/mainthread-work-breakdown.js | description": {
    "message": "Pomyśl o skróceniu czasu poświęcanego na analizowanie, kompilowanie i wykonywanie kodu JS. Może w tym pomóc dostarczanie mniejszych ładunków JS. [Jak zminimalizować czas pracy z wątkiem głównym](https://developer.chrome.com/docs/lighthouse/performance/mainthread-work-breakdown/)"
  },
  "core/audits/mainthread-work-breakdown.js | failureTitle": {
    "message": "Zminimalizuj aktywność głównego wątku"
  },
  "core/audits/mainthread-work-breakdown.js | title": {
    "message": "Minimalizuje aktywność głównego wątku"
  },
  "core/audits/metrics/cumulative-layout-shift.js | description": {
    "message": "Zbiorcze przesunięcie układu to miara ruchu elementów w widocznym obszarze. [Więcej informacji o danych dotyczących zbiorczego przesunięcia układu](https://web.dev/articles/cls)"
  },
  "core/audits/metrics/first-contentful-paint.js | description": {
    "message": "Pierwsze wyrenderowanie treści oznacza czas wyrenderowania pierwszego tekstu lub obrazu. [Więcej informacji o danych pierwszego wyrenderowania treści](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/)"
  },
  "core/audits/metrics/interaction-to-next-paint.js | description": {
    "message": "Czas od interakcji do kolejnego wyrenderowania określa responsywność strony, czyli czas potrzebny do widocznej reakcji na dane wprowadzone przez użytkownika. [Więcej informacji o czasie od interakcji do kolejnego wyrenderowania](https://web.dev/articles/inp)"
  },
  "core/audits/metrics/interactive.js | description": {
    "message": "Czas do pełnej interaktywności to czas, po którym strona staje się w pełni interaktywna. [Więcej informacji o danych dotyczących czasu do pełnej interaktywności](https://developer.chrome.com/docs/lighthouse/performance/interactive/)"
  },
  "core/audits/metrics/largest-contentful-paint.js | description": {
    "message": "Wyrenderowanie największej części treści oznacza czas wyrenderowania największego tekstu lub obrazu. [Więcej informacji o wartości wyrenderowania największej części treści](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)"
  },
  "core/audits/metrics/max-potential-fid.js | description": {
    "message": "Maksymalne opóźnienie po pierwszej interakcji, którego mogą doświadczyć użytkownicy, to czas wykonywania najdłuższego zadania. [Więcej informacji o danych dotyczących maksymalnego potencjalnego opóźnienia po pierwszej interakcji](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-max-potential-fid/)"
  },
  "core/audits/metrics/speed-index.js | description": {
    "message": "Speed Index wskazuje, jak szybko strona zapełnia się widocznymi treściami. [Więcej informacji o danych Speed Index](https://developer.chrome.com/docs/lighthouse/performance/speed-index/)"
  },
  "core/audits/metrics/total-blocking-time.js | description": {
    "message": "Wyrażona w milisekundach suma wszystkich okresów między pierwszym wyrenderowaniem treści a czasem do pełnej interaktywności, gdy długość zadania przekroczyła 50 ms. [Więcej informacji o łącznym czasie blokowania](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-total-blocking-time/)"
  },
  "core/audits/network-rtt.js | description": {
    "message": "Czas błądzenia w sieci (RTT) ma duży wpływ na szybkość działania. Jeśli RTT do źródła jest duży, serwery znajdujące się bliżej użytkownika mogą przyśpieszyć działanie. [Więcej informacji o czasie błądzenia](https://hpbn.co/primer-on-latency-and-bandwidth/)"
  },
  "core/audits/network-rtt.js | title": {
    "message": "Czasy błądzenia w sieci (Network Round Trip Times)"
  },
  "core/audits/network-server-latency.js | description": {
    "message": "Opóźnienie serwera może wpływać na szybkość stron internetowych. Jeśli opóźnienie serwera źródłowego jest duże, serwer może być przeciążony lub mieć mało wydajny backend. [Więcej informacji o czasie reakcji serwera](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall)"
  },
  "core/audits/network-server-latency.js | title": {
    "message": "Opóźnienia backendu serwera"
  },
  "core/audits/non-composited-animations.js | description": {
    "message": "Nieskomponowane animacje mogą działać nieprawidłowo i zwiększać CLS. [Jak unikać nieskomponowanych animacji](https://developer.chrome.com/docs/lighthouse/performance/non-composited-animations/)"
  },
  "core/audits/non-composited-animations.js | displayValue": {
    "message": "{itemCount,plural, =1{Znaleziono # animowany element}few{Znaleziono # animowane elementy}many{Znaleziono # animowanych elementów}other{Znaleziono # animowanego elementu}}"
  },
  "core/audits/non-composited-animations.js | filterMayMovePixels": {
    "message": "Właściwość związana z filtrowaniem może powodować przemieszczanie pikseli"
  },
  "core/audits/non-composited-animations.js | incompatibleAnimations": {
    "message": "Obiekt docelowy zawiera inną, niezgodną animację"
  },
  "core/audits/non-composited-animations.js | nonReplaceCompositeMode": {
    "message": "Efekt ma tryb komponowania inny niż „replace”"
  },
  "core/audits/non-composited-animations.js | title": {
    "message": "Unikaj nieskomponowanych animacji"
  },
  "core/audits/non-composited-animations.js | transformDependsBoxSize": {
    "message": "Właściwość związana z przekształceniem zależy od rozmiaru pola"
  },
  "core/audits/non-composited-animations.js | unsupportedCSSProperty": {
    "message": "{propertyCount,plural, =1{Nieobsługiwana właściwość CSS: {properties}}few{Nieobsługiwane właściwości CSS: {properties}}many{Nieobsługiwane właściwości CSS: {properties}}other{Nieobsługiwane właściwości CSS: {properties}}}"
  },
  "core/audits/non-composited-animations.js | unsupportedCustomCSSProperty": {
    "message": "{propertyCount,plural, =1{Niestandardowych właściwości CSS nie można animować w kompozytorze: {properties}}few{Niestandardowych właściwości CSS nie można animować w kompozytorze: {properties}}many{Niestandardowych właściwości CSS nie można animować w kompozytorze: {properties}}other{Niestandardowych właściwości CSS nie można animować w kompozytorze: {properties}}}"
  },
  "core/audits/non-composited-animations.js | unsupportedTimingParameters": {
    "message": "Efekt ma nieobsługiwane parametry czasowe"
  },
  "core/audits/origin-isolation.js | columnDirective": {
    "message": "Dyrektywa"
  },
  "core/audits/origin-isolation.js | columnSeverity": {
    "message": "Waga"
  },
  "core/audits/origin-isolation.js | description": {
    "message": "Zasady dotyczącej otwierającego z innej domeny (COOP) można użyć do oddzielenia okna najwyższego poziomu od innych dokumentów, takich jak wyskakujące okienka. [Więcej informacji o wdrażaniu nagłówka COOP](https://web.dev/articles/why-coop-coep#coop)"
  },
  "core/audits/origin-isolation.js | invalidSyntax": {
    "message": "Nieprawidłowa składnia"
  },
  "core/audits/origin-isolation.js | noCoop": {
    "message": "Nie znaleziono nagłówka COOP"
  },
  "core/audits/origin-isolation.js | title": {
    "message": "Zapewnij prawidłowe izolowanie źródła za pomocą COOP"
  },
  "core/audits/redirects-http.js | description": {
    "message": "Przekieruj cały ruch HTTP do HTTPS, aby wszyscy użytkownicy mogli korzystać z bezpiecznych funkcji internetowych. [Więcej informacji](https://developer.chrome.com/docs/lighthouse/pwa/redirects-http/)"
  },
  "core/audits/redirects-http.js | failureTitle": {
    "message": "Nie przekierowuje ruchu HTTP do HTTPS"
  },
  "core/audits/redirects-http.js | title": {
    "message": "Przekierowuje ruch HTTP do HTTPS"
  },
  "core/audits/redirects.js | description": {
    "message": "Przekierowania wprowadzają dodatkowe opóźnienia przed załadowaniem strony. [Jak unikać przekierowań strony](https://developer.chrome.com/docs/lighthouse/performance/redirects/)"
  },
  "core/audits/redirects.js | title": {
    "message": "Unikaj wielokrotnych przekierowań"
  },
  "core/audits/seo/canonical.js | description": {
    "message": "Linki kanoniczne sugerują URL, który ma być pokazywany w wynikach wyszukiwania. [Więcej informacji o linkach kanonicznych](https://developer.chrome.com/docs/lighthouse/seo/canonical/)"
  },
  "core/audits/seo/canonical.js | explanationConflict": {
    "message": "Niezgodne ze sobą adresy URL ({urlList})"
  },
  "core/audits/seo/canonical.js | explanationInvalid": {
    "message": "Nieprawidłowy URL ({url})"
  },
  "core/audits/seo/canonical.js | explanationPointsElsewhere": {
    "message": "Wskazuje inną lokalizację atrybutu `hreflang` ({url})"
  },
  "core/audits/seo/canonical.js | explanationRelative": {
    "message": "URL nie jest bezwzględny ({url})"
  },
  "core/audits/seo/canonical.js | explanationRoot": {
    "message": "Wskazuje główny URL domeny (stronę główną) zamiast odpowiedniej strony z treścią"
  },
  "core/audits/seo/canonical.js | failureTitle": {
    "message": "Dokument nie zawiera prawidłowego atrybutu `rel=canonical`"
  },
  "core/audits/seo/canonical.js | title": {
    "message": "Dokument ma prawidłowy atrybut `rel=canonical`"
  },
  "core/audits/seo/crawlable-anchors.js | columnFailingLink": {
    "message": "Link niemożliwy do zindeksowania"
  },
  "core/audits/seo/crawlable-anchors.js | description": {
    "message": "Wyszukiwarki mogą korzystać z atrybutów `href` w linkach, aby móc indeksować witryny. Upewnij się, że atrybut `href` zakotwiczonych elementów prowadzi do odpowiedniego miejsca docelowego, aby możliwe było odnalezienie większej liczby stron w witrynie. [Jak umożliwić indeksowanie linków](https://support.google.com/webmasters/answer/9112205)"
  },
  "core/audits/seo/crawlable-anchors.js | failureTitle": {
    "message": "Linków  nie  można zindeksować"
  },
  "core/audits/seo/crawlable-anchors.js | title": {
    "message": "Linki  można  zindeksować"
  },
  "core/audits/seo/hreflang.js | description": {
    "message": "Linki hreflang informują wyszukiwarki, którą wersję strony pokazywać w wynikach wyszukiwania dla danego języka lub regionu. [Więcej informacji o linkach `hreflang`](https://developer.chrome.com/docs/lighthouse/seo/hreflang/)"
  },
  "core/audits/seo/hreflang.js | failureTitle": {
    "message": "Dokument nie ma prawidłowego atrybutu `hreflang`"
  },
  "core/audits/seo/hreflang.js | notFullyQualified": {
    "message": "Względna wartość href"
  },
  "core/audits/seo/hreflang.js | title": {
    "message": "Dokument ma prawidłowy atrybut `hreflang`"
  },
  "core/audits/seo/hreflang.js | unexpectedLanguage": {
    "message": "Nieoczekiwany kod języka"
  },
  "core/audits/seo/http-status-code.js | description": {
    "message": "Strony z kodem stanu HTTP oznaczającym niepowodzenie mogą nie być indeksowane poprawnie. [Więcej informacji o kodach stanu HTTP](https://developer.chrome.com/docs/lighthouse/seo/http-status-code/)"
  },
  "core/audits/seo/http-status-code.js | failureTitle": {
    "message": "Strona ma kod stanu HTTP oznaczający niepowodzenie"
  },
  "core/audits/seo/http-status-code.js | title": {
    "message": "Strona ma kod stanu HTTP oznaczający powodzenie"
  },
  "core/audits/seo/is-crawlable.js | description": {
    "message": "Wyszukiwarki nie mogą umieszczać Twoich stron w wynikach wyszukiwania, jeśli nie mają uprawnień, aby je indeksować. [Więcej informacji o dyrektywach robota](https://developer.chrome.com/docs/lighthouse/seo/is-crawlable/)"
  },
  "core/audits/seo/is-crawlable.js | failureTitle": {
    "message": "Zablokowano indeksowanie strony"
  },
  "core/audits/seo/is-crawlable.js | title": {
    "message": "Indeksowanie strony nie jest zablokowane"
  },
  "core/audits/seo/link-text.js | description": {
    "message": "Opisowy tekst linków ułatwia wyszukiwarkom zrozumienie zawartości stron. [Jak ułatwić dostęp do linków](https://developer.chrome.com/docs/lighthouse/seo/link-text/)"
  },
  "core/audits/seo/link-text.js | displayValue": {
    "message": "{itemCount,plural, =1{Znaleziono 1 link}few{Znaleziono # linki}many{Znaleziono # linków}other{Znaleziono # linku}}"
  },
  "core/audits/seo/link-text.js | failureTitle": {
    "message": "Linki nie mają opisowego tekstu"
  },
  "core/audits/seo/link-text.js | title": {
    "message": "Linki mają tekst opisowy"
  },
  "core/audits/seo/manual/structured-data.js | description": {
    "message": "Uruchom [Narzędzie do testowania uporządkowanych danych](https://developers.google.com/search/docs/appearance/structured-data/), aby sprawdzić uporządkowane dane. [Więcej informacji o uporządkowanych danych](https://developer.chrome.com/docs/lighthouse/seo/structured-data/)"
  },
  "core/audits/seo/manual/structured-data.js | title": {
    "message": "Uporządkowane dane są prawidłowe"
  },
  "core/audits/seo/meta-description.js | description": {
    "message": "Metaopis można umieścić w wynikach wyszukiwania, aby krótko podsumować zawartość strony. [Więcej informacji o metaopisie](https://developer.chrome.com/docs/lighthouse/seo/meta-description/)"
  },
  "core/audits/seo/meta-description.js | explanation": {
    "message": "Tekst opisu jest pusty."
  },
  "core/audits/seo/meta-description.js | failureTitle": {
    "message": "Dokument nie ma metaopisu"
  },
  "core/audits/seo/meta-description.js | title": {
    "message": "Dokument ma metaopis"
  },
  "core/audits/seo/robots-txt.js | description": {
    "message": "Jeśli plik robots.txt ma nieprawidłowy format, roboty indeksujące mogą nie wiedzieć, jak mają indeksować witrynę. [Więcej informacji o plikach robots.txt](https://developer.chrome.com/docs/lighthouse/seo/invalid-robots-txt/)"
  },
  "core/audits/seo/robots-txt.js | displayValueHttpBadCode": {
    "message": "Żądanie pliku robots.txt zwróciło stan HTTP: {statusCode}"
  },
  "core/audits/seo/robots-txt.js | displayValueValidationError": {
    "message": "{itemCount,plural, =1{Znaleziono 1 błąd}few{Znaleziono # błędy}many{Znaleziono # błędów}other{Znaleziono # błędu}}"
  },
  "core/audits/seo/robots-txt.js | explanation": {
    "message": "Lighthouse nie udało się pobrać pliku robots.txt"
  },
  "core/audits/seo/robots-txt.js | failureTitle": {
    "message": "Plik robots.txt jest nieprawidłowy"
  },
  "core/audits/seo/robots-txt.js | title": {
    "message": "Plik robots.txt jest prawidłowy"
  },
  "core/audits/server-response-time.js | description": {
    "message": "Zadbaj o to, aby czas reakcji serwera był jak najkrótszy dla głównego dokumentu na stronie, bo to od niego zależą wszystkie inne żądania. [Więcej informacji o czasie do pierwszego bajtu](https://developer.chrome.com/docs/lighthouse/performance/time-to-first-byte/)"
  },
  "core/audits/server-response-time.js | displayValue": {
    "message": "Czas odpowiedzi głównego dokumentu: {timeInMs, number, milliseconds} ms"
  },
  "core/audits/server-response-time.js | failureTitle": {
    "message": "Skróć wstępny czas reakcji serwera"
  },
  "core/audits/server-response-time.js | title": {
    "message": "Wstępny czas reakcji serwera był krótki"
  },
  "core/audits/third-party-cookies.js | description": {
    "message": "W niektórych kontekstach pliki cookie innych firm mogą być blokowane. [Więcej informacji o przygotowaniu się na ograniczenia plików cookie innych firm](https://privacysandbox.google.com/cookies/prepare/overview)"
  },
  "core/audits/third-party-cookies.js | displayValue": {
    "message": "{itemCount,plural, =1{Znaleziono 1 plik cookie}few{Znaleziono # pliki cookie}many{Znaleziono # plików cookie}other{Znaleziono # pliku cookie}}"
  },
  "core/audits/third-party-cookies.js | failureTitle": {
    "message": "Używa plików cookie innych firm"
  },
  "core/audits/third-party-cookies.js | title": {
    "message": "Nie używa plików cookie innych firm"
  },
  "core/audits/trusted-types-xss.js | columnSeverity": {
    "message": "Waga"
  },
  "core/audits/trusted-types-xss.js | description": {
    "message": "Dyrektywa `require-trusted-types-for` w nagłówku `Content-Security-Policy` (CSP) nakazuje klientom użytkownika kontrolowanie danych przekazywanych do funkcji ujścia DOM XSS. [Więcej informacji o ograniczaniu ryzyka wystąpienia ataku XSS opartego na DOM z użyciem dyrektywy Trusted Types](https://developer.chrome.com/docs/lighthouse/best-practices/trusted-types-xss)"
  },
  "core/audits/trusted-types-xss.js | noTrustedTypesToMitigateXss": {
    "message": "Nie znaleziono nagłówka `Content-Security-Policy` z dyrektywą Trusted Types"
  },
  "core/audits/trusted-types-xss.js | title": {
    "message": "Ograniczanie ataków typu XSS opartych na DOM przy użyciu dyrektywy Trusted Types"
  },
  "core/audits/unsized-images.js | description": {
    "message": "W elementach graficznych określ wyraźnie szerokość i wysokość, aby ograniczyć przesunięcia układu i ulepszyć CLS. [Jak ustawić wymiary obrazu](https://web.dev/articles/optimize-cls#images_without_dimensions)"
  },
  "core/audits/unsized-images.js | failureTitle": {
    "message": "Elementy graficzne nie mają bezpośrednio określonych atrybutów `width` ani `height`"
  },
  "core/audits/unsized-images.js | title": {
    "message": "Elementy graficzne mają bezpośrednio określone atrybuty `width` i `height`"
  },
  "core/audits/user-timings.js | columnType": {
    "message": "Typ"
  },
  "core/audits/user-timings.js | description": {
    "message": "Do aplikacji możesz dodać obsługę interfejsu User Timing API, aby mierzyć rzeczywistą szybkość aplikacji z punktu widzenia użytkownika. [Więcej informacji o znacznikach czasu działań użytkownika](https://developer.chrome.com/docs/lighthouse/performance/user-timings/)"
  },
  "core/audits/user-timings.js | displayValue": {
    "message": "{itemCount,plural, =1{1 czas działań użytkownika}few{# czasy działań użytkownika}many{# czasów działań użytkownika}other{# czasu działań użytkownika}}"
  },
  "core/audits/user-timings.js | title": {
    "message": "Znaczniki i odcinki Czasu działań użytkownika"
  },
  "core/audits/valid-source-maps.js | columnMapURL": {
    "message": "URL mapy"
  },
  "core/audits/valid-source-maps.js | description": {
    "message": "Mapy źródeł tłumaczą zminifikowany kod na oryginalny kod źródłowy. Ułatwia to programistom debugowanie w środowisku produkcyjnym. Oprócz tego Lighthouse może udostępniać dodatkowe statystyki. Warto wdrożyć mapy źródeł, aby korzystać z tych możliwości. [Więcej informacji o mapach źródeł](https://developer.chrome.com/docs/devtools/javascript/source-maps/)"
  },
  "core/audits/valid-source-maps.js | failureTitle": {
    "message": "Brakuje map źródeł dla własnych dużych plików JavaScript"
  },
  "core/audits/valid-source-maps.js | missingSourceMapErrorMessage": {
    "message": "Duży plik JavaScript nie ma mapy źródeł"
  },
  "core/audits/valid-source-maps.js | missingSourceMapItemsWarningMesssage": {
    "message": "{missingItems,plural, =1{Ostrzeżenie: brak 1 elementu w atrybucie `.sourcesContent`}few{Ostrzeżenie: brak # elementów w atrybucie `.sourcesContent`}many{Ostrzeżenie: brak # elementów w atrybucie `.sourcesContent`}other{Ostrzeżenie: brak # elementu w atrybucie `.sourcesContent`}}"
  },
  "core/audits/valid-source-maps.js | title": {
    "message": "Strona ma prawidłowe mapy źródeł"
  },
  "core/config/default-config.js | a11yAriaGroupDescription": {
    "message": "To są możliwości lepszego wykorzystania atrybutów ARIA w Twojej aplikacji, by była ona wygodniejsza dla użytkowników technologii wspomagających, takich jak czytniki ekranu."
  },
  "core/config/default-config.js | a11yAriaGroupTitle": {
    "message": "ARIA"
  },
  "core/config/default-config.js | a11yAudioVideoGroupDescription": {
    "message": "To są możliwości dostarczenia alternatywnej treści dla audio i wideo. Dzięki temu treści mogą stać się bardziej przystępne dla osób niedowidzących i niedosłyszących."
  },
  "core/config/default-config.js | a11yAudioVideoGroupTitle": {
    "message": "Dźwięk i obraz"
  },
  "core/config/default-config.js | a11yBestPracticesGroupDescription": {
    "message": "Te pozycje wskazują typowe sprawdzone metody ułatwień dostępu."
  },
  "core/config/default-config.js | a11yBestPracticesGroupTitle": {
    "message": "Sprawdzone metody"
  },
  "core/config/default-config.js | a11yCategoryDescription": {
    "message": "Te testy wskazują możliwości [ulepszenia ułatwień dostępu w Twojej aplikacji internetowej](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatycznie wykrywane są tylko niektóre problemy, co nie daje gwarancji, że w Twojej aplikacji internetowej będą działać ułatwienia dostępu, dlatego zalecamy [testy ręczne](https://web.dev/articles/how-to-review)."
  },
  "core/config/default-config.js | a11yCategoryManualDescription": {
    "message": "Te pozycje dotyczą obszarów, których narzędzie do testów automatycznych nie może zbadać. Więcej informacji w naszym przewodniku po [prowadzeniu przeglądu ułatwień dostępu](https://web.dev/articles/how-to-review)."
  },
  "core/config/default-config.js | a11yCategoryTitle": {
    "message": "Ułatwienia dostępu"
  },
  "core/config/default-config.js | a11yColorContrastGroupDescription": {
    "message": "To są możliwości poprawy czytelności treści."
  },
  "core/config/default-config.js | a11yColorContrastGroupTitle": {
    "message": "Kontrast"
  },
  "core/config/default-config.js | a11yLanguageGroupDescription": {
    "message": "To są możliwości ulepszenia interpretacji treści przez użytkowników mających różne ustawienia języka."
  },
  "core/config/default-config.js | a11yLanguageGroupTitle": {
    "message": "Internacjonalizacja i lokalizacja"
  },
  "core/config/default-config.js | a11yNamesLabelsGroupDescription": {
    "message": "To są możliwości ulepszenia semantyki kontrolek aplikacji. Dzięki temu treści mogą stać się bardziej przystępne dla użytkowników technologii wspomagających, takich jak czytniki ekranu."
  },
  "core/config/default-config.js | a11yNamesLabelsGroupTitle": {
    "message": "Nazwy i etykiety"
  },
  "core/config/default-config.js | a11yNavigationGroupDescription": {
    "message": "To są możliwości ulepszenia nawigacji za pomocą klawiatury w Twojej aplikacji."
  },
  "core/config/default-config.js | a11yNavigationGroupTitle": {
    "message": "Nawigacja"
  },
  "core/config/default-config.js | a11yTablesListsVideoGroupDescription": {
    "message": "Tutaj znajdziesz informacje o tym, jak możesz ułatwić odczytywanie danych z tabel i list za pomocą technologii wspomagających osoby z niepełnosprawnością (np. czytników ekranu)."
  },
  "core/config/default-config.js | a11yTablesListsVideoGroupTitle": {
    "message": "Tabele i listy"
  },
  "core/config/default-config.js | bestPracticesBrowserCompatGroupTitle": {
    "message": "Zgodność z przeglądarką"
  },
  "core/config/default-config.js | bestPracticesCategoryTitle": {
    "message": "Sprawdzone metody"
  },
  "core/config/default-config.js | bestPracticesGeneralGroupTitle": {
    "message": "Ogólne"
  },
  "core/config/default-config.js | bestPracticesTrustSafetyGroupTitle": {
    "message": "Zaufanie i bezpieczeństwo"
  },
  "core/config/default-config.js | bestPracticesUXGroupTitle": {
    "message": "Wygoda użytkowników"
  },
  "core/config/default-config.js | diagnosticsGroupDescription": {
    "message": "Więcej o wydajności aplikacji. Te liczby nie mają [bezpośredniego wpływu](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) na wyniki w kategorii Wydajność."
  },
  "core/config/default-config.js | diagnosticsGroupTitle": {
    "message": "Diagnostyka"
  },
  "core/config/default-config.js | firstPaintImprovementsGroupDescription": {
    "message": "Najważniejszym aspektem wydajności jest to, jak szybko piksele zostaną wyświetlone na ekranie. Kluczowe wskaźniki: Pierwsze wyrenderowanie treści, Pierwsze wyrenderowanie elementu znaczącego"
  },
  "core/config/default-config.js | firstPaintImprovementsGroupTitle": {
    "message": "Ulepszenia pierwszego renderowania"
  },
  "core/config/default-config.js | insightsGroupDescription": {
    "message": "Te statystyki są też dostępne na panelu Wydajność w Narzędziach deweloperskich w Chrome – [nagraj ślad](https://developer.chrome.com/docs/devtools/performance/reference), aby wyświetlić bardziej szczegółowe informacje."
  },
  "core/config/default-config.js | insightsGroupTitle": {
    "message": "Statystyki"
  },
  "core/config/default-config.js | metricGroupTitle": {
    "message": "Dane"
  },
  "core/config/default-config.js | overallImprovementsGroupDescription": {
    "message": "Usprawnij całe ładowanie, by strona jak najszybciej była gotowa do używania i reagowała na działania użytkownika. Główne wskaźniki: Czas do pełnej interaktywności, Speed Index"
  },
  "core/config/default-config.js | overallImprovementsGroupTitle": {
    "message": "Ogólne usprawnienia"
  },
  "core/config/default-config.js | performanceCategoryTitle": {
    "message": "Wydajność"
  },
  "core/config/default-config.js | seoCategoryDescription": {
    "message": "Te testy sprawdzają, czy strona została utworzona z zastosowaniem podstawowych zaleceń dotyczących optymalizacji witryn pod kątem wyszukiwarek (SEO). Na pozycję strony w wyszukiwarce mogą wpływać inne czynniki, których Lighthouse nie sprawdza, np. wydajność mierzona za pomocą [podstawowych wskaźników internetowych](https://web.dev/explore/vitals). [Dowiedz się więcej o podstawowych zasadach wyszukiwania w Google](https://support.google.com/webmasters/answer/35769)"
  },
  "core/config/default-config.js | seoCategoryManualDescription": {
    "message": "Uruchom te dodatkowe walidatory w swojej witrynie, by skontrolować więcej sprawdzonych metod SEO."
  },
  "core/config/default-config.js | seoCategoryTitle": {
    "message": "SEO"
  },
  "core/config/default-config.js | seoContentGroupDescription": {
    "message": "Dostosuj kod HTML w taki sposób, by roboty lepiej rozumiały zawartość aplikacji."
  },
  "core/config/default-config.js | seoContentGroupTitle": {
    "message": "Sprawdzone metody publikowania treści"
  },
  "core/config/default-config.js | seoCrawlingGroupDescription": {
    "message": "Jeśli Twoja aplikacja ma pojawiać się w wynikach wyszukiwania, muszą mieć do niej dostęp roboty."
  },
  "core/config/default-config.js | seoCrawlingGroupTitle": {
    "message": "Skanowanie i indeksowanie"
  },
  "core/config/default-config.js | seoMobileGroupDescription": {
    "message": "Dostosuj strony do komórek, aby użytkownicy nie musieli pomniejszać ani powiększać ekranu, gdy będą chcieli coś przeczytać. [Dowiedz się, jak dostosować strony do komórek](https://developers.google.com/search/mobile-sites/)"
  },
  "core/config/default-config.js | seoMobileGroupTitle": {
    "message": "Na komórki"
  },
  "core/gather/driver/environment.js | warningSlowHostCpu": {
    "message": "Testowane urządzenie wydaje się mieć procesor o szybkości mniejszej niż oczekiwana przez Lighthouse. Może to negatywnie wpływać na wynik w kategorii Wydajność. Dowiedz się więcej o [kalibrowaniu odpowiedniego mnożnika spowolnienia procesora](https://github.com/GoogleChrome/lighthouse/blob/main/docs/throttling.md#cpu-throttling)."
  },
  "core/gather/driver/navigation.js | warningRedirected": {
    "message": "Strona może nie wczytywać się prawidłowo, ponieważ testowy URL ({requested}) został przekierowany pod adres {final}. Przetestuj drugi adres URL bezpośrednio."
  },
  "core/gather/driver/navigation.js | warningTimeout": {
    "message": "Wczytywanie strony trwało za długo i nie zostało ukończone w przewidzianym na to czasie. Wyniki mogą być niepełne."
  },
  "core/gather/driver/storage.js | warningCacheTimeout": {
    "message": "Przekroczono limit czasu czyszczenia pamięci podręcznej przeglądarki. Ponownie sprawdź tę stronę, a jeśli problem nie ustąpi, zgłoś błąd."
  },
  "core/gather/driver/storage.js | warningData": {
    "message": "{locationCount,plural, =1{Możliwe, że przechowywane są dane, które mają wpływ na szybkość wczytywania w tej lokalizacji: {locations}. Aby uchronić się przed wpływem tych zasobów na wyniki, sprawdź tę stronę w oknie incognito.}few{Możliwe, że przechowywane są dane, które mają wpływ na szybkość wczytywania w tych lokalizacjach: {locations}. Aby uchronić się przed wpływem tych zasobów na wyniki, sprawdź tę stronę w oknie incognito.}many{Możliwe, że przechowywane są dane, które mają wpływ na szybkość wczytywania w tych lokalizacjach: {locations}. Aby uchronić się przed wpływem tych zasobów na wyniki, sprawdź tę stronę w oknie incognito.}other{Możliwe, że przechowywane są dane, które mają wpływ na szybkość wczytywania w tych lokalizacjach: {locations}. Aby uchronić się przed wpływem tych zasobów na wyniki, sprawdź tę stronę w oknie incognito.}}"
  },
  "core/gather/driver/storage.js | warningOriginDataTimeout": {
    "message": "Przekroczono limit czasu czyszczenia danych origin. Ponownie sprawdź tę stronę, a jeśli problem nie ustąpi, zgłoś błąd."
  },
  "core/gather/gatherers/link-elements.js | headerParseWarning": {
    "message": "Podczas analizowania nagłówka `link` ({error}) wystąpił błąd: `{header}`"
  },
  "core/gather/timespan-runner.js | warningNavigationDetected": {
    "message": "Podczas działania wykryto nawigację na stronie. Nie zalecamy używania trybu zakresu czasu do kontroli nawigacji na stronach. Aby kontrolować nawigację na stronach, używaj trybu nawigacji. Pozwoli to ulepszyć atrybucję firm zewnętrznych i wykrywanie wątków głównych."
  },
  "core/lib/csp-evaluator.js | allowlistFallback": {
    "message": "Zastanów się, czy nie dodać schematów adresów URL https: i http: (ignorowanych przez przeglądarki obsługujące dyrektywę `'strict-dynamic'`), aby uzyskać zgodność wsteczną ze starszymi przeglądarkami."
  },
  "core/lib/csp-evaluator.js | deprecatedDisownOpener": {
    "message": "Od momentu wprowadzenia CSP3 dyrektywa `disown-opener` jest wycofana. Zamiast niej użyj nagłówka Cross-Origin-Opener-Policy."
  },
  "core/lib/csp-evaluator.js | deprecatedReferrer": {
    "message": "Od momentu wprowadzenia CSP2 dyrektywa `referrer` jest wycofana. Zamiast niej użyj nagłówka Referrer-Policy."
  },
  "core/lib/csp-evaluator.js | deprecatedReflectedXSS": {
    "message": "Od momentu wprowadzenia CSP2 dyrektywa `reflected-xss` jest wycofana. Zamiast niej użyj nagłówka X-XSS-Protection."
  },
  "core/lib/csp-evaluator.js | missingBaseUri": {
    "message": "Brak dyrektywy `base-uri` umożliwia wstrzyknięcie tagów `<base>`. W ten sposób hakerzy mogą ustawić podstawowy adres URL dla wszystkich względnych adresów URL (np. skryptów) na domenę, którą kontrolują. Dyrektywę `base-uri` warto ustawić na `'none'` lub `'self'`."
  },
  "core/lib/csp-evaluator.js | missingObjectSrc": {
    "message": "Brak dyrektywy `object-src` umożliwia wstrzykiwanie wtyczek, które wykonują niebezpieczne skrypty. Jeśli to możliwe, ustaw dyrektywę `object-src` na `'none'`."
  },
  "core/lib/csp-evaluator.js | missingScriptSrc": {
    "message": "Brak dyrektywy `script-src`. Może to pozwolić na uruchamianie niebezpiecznych skryptów."
  },
  "core/lib/csp-evaluator.js | missingSemicolon": {
    "message": "Prawdopodobnie brakuje średnika. Ciąg {keyword} wygląda jak dyrektywa, a nie jak słowo kluczowe."
  },
  "core/lib/csp-evaluator.js | nonceCharset": {
    "message": "W liczbach jednorazowych należy używać zestawu znaków base64."
  },
  "core/lib/csp-evaluator.js | nonceLength": {
    "message": "Liczby jednorazowe powinny składać się co najmniej z 8 znaków."
  },
  "core/lib/csp-evaluator.js | plainUrlScheme": {
    "message": "Unikaj używania w tej dyrektywie płaskich schematów URL ({keyword}). Płaskie schematy URL zezwalają na pobieranie skryptów z niebezpiecznej domeny."
  },
  "core/lib/csp-evaluator.js | plainWildcards": {
    "message": "Unikaj używania w tej dyrektywie płaskich symboli zastępczych ({keyword}). Płaskie symbole zastępcze zezwalają na pobieranie skryptów z niebezpiecznej domeny."
  },
  "core/lib/csp-evaluator.js | reportToOnly": {
    "message": "Miejsce docelowe raportowania zostało skonfigurowane tylko za pomocą dyrektywy report-to. Jest ona obsługiwana jedynie w przeglądarkach opartych na Chromium, dlatego zaleca się też używanie dyrektywy `report-uri`."
  },
  "core/lib/csp-evaluator.js | reportingDestinationMissing": {
    "message": "Dla CSP nie skonfigurowano żadnego miejsca docelowego raportowania. Będzie to powodować utrudnienia w późniejszym konserwowaniu CSP i monitorowaniu problemów."
  },
  "core/lib/csp-evaluator.js | strictDynamic": {
    "message": "Listy dozwolonych hostów mogą być często pomijane. Zastanów się, czy nie użyć liczb jednorazowych lub haszy CSP w połączeniu z dyrektywą `'strict-dynamic'`, jeśli to konieczne."
  },
  "core/lib/csp-evaluator.js | unknownDirective": {
    "message": "Nieznana dyrektywa CSP."
  },
  "core/lib/csp-evaluator.js | unknownKeyword": {
    "message": "{keyword} jest prawdopodobnie nieprawidłowym słowem kluczowym."
  },
  "core/lib/csp-evaluator.js | unsafeInline": {
    "message": "Dyrektywa `'unsafe-inline'` zezwala na wykonywanie niebezpiecznych skryptów na stronie i uruchamianie modułów obsługi zdarzeń. Zastanów się, czy nie użyć liczb jednorazowych lub haszy CSP, aby zezwolić osobno na poszczególne skrypty."
  },
  "core/lib/csp-evaluator.js | unsafeInlineFallback": {
    "message": "Zastanów się, czy nie dodać dyrektywy `'unsafe-inline'` (ignorowanej przez przeglądarki obsługujące liczby jednorazowe i hasze), aby uzyskać zgodność wsteczną ze starszymi przeglądarkami."
  },
  "core/lib/deprecation-description.js | feature": {
    "message": "Więcej szczegółów znajdziesz na stronie z informacjami o stanie funkcji."
  },
  "core/lib/deprecation-description.js | milestone": {
    "message": "Ta zmiana zostanie wprowadzona w wersji {milestone}."
  },
  "core/lib/deprecation-description.js | title": {
    "message": "Użyto wycofanej funkcji"
  },
  "core/lib/i18n/i18n.js | columnBlockingTime": {
    "message": "Czas blokowania głównego wątku"
  },
  "core/lib/i18n/i18n.js | columnCacheTTL": {
    "message": "Czas przechowywania danych w pamięci podręcznej"
  },
  "core/lib/i18n/i18n.js | columnDescription": {
    "message": "Opis"
  },
  "core/lib/i18n/i18n.js | columnDuration": {
    "message": "Czas trwania"
  },
  "core/lib/i18n/i18n.js | columnElement": {
    "message": "Element"
  },
  "core/lib/i18n/i18n.js | columnFailingElem": {
    "message": "Nieprawidłowe elementy"
  },
  "core/lib/i18n/i18n.js | columnLocation": {
    "message": "Lokalizacja"
  },
  "core/lib/i18n/i18n.js | columnName": {
    "message": "Nazwa"
  },
  "core/lib/i18n/i18n.js | columnRequests": {
    "message": "Żądania"
  },
  "core/lib/i18n/i18n.js | columnResourceSize": {
    "message": "Rozmiar zasobu"
  },
  "core/lib/i18n/i18n.js | columnResourceType": {
    "message": "Typ zasobu"
  },
  "core/lib/i18n/i18n.js | columnSize": {
    "message": "Rozmiar"
  },
  "core/lib/i18n/i18n.js | columnSource": {
    "message": "Źródło"
  },
  "core/lib/i18n/i18n.js | columnStartTime": {
    "message": "Czas rozpoczęcia"
  },
  "core/lib/i18n/i18n.js | columnTimeSpent": {
    "message": "Spędzony czas"
  },
  "core/lib/i18n/i18n.js | columnTransferSize": {
    "message": "Rozmiar przesłanych danych"
  },
  "core/lib/i18n/i18n.js | columnURL": {
    "message": "URL"
  },
  "core/lib/i18n/i18n.js | columnWastedBytes": {
    "message": "Szacunkowe zmniejszenie rozmiaru"
  },
  "core/lib/i18n/i18n.js | columnWastedMs": {
    "message": "Szacunkowe przyspieszenie"
  },
  "core/lib/i18n/i18n.js | cumulativeLayoutShiftMetric": {
    "message": "Cumulative Layout Shift"
  },
  "core/lib/i18n/i18n.js | displayValueByteSavings": {
    "message": "Szacunkowe zmniejszenie rozmiaru: {wastedBytes, number, bytes} KiB"
  },
  "core/lib/i18n/i18n.js | displayValueElementsFound": {
    "message": "{nodeCount,plural, =1{Znaleziono 1 element}few{Znaleziono # elementy}many{Znaleziono # elementów}other{Znaleziono # elementu}}"
  },
  "core/lib/i18n/i18n.js | displayValueMsSavings": {
    "message": "Szacunkowe przyspieszenie: {wastedMs, number, milliseconds} ms"
  },
  "core/lib/i18n/i18n.js | documentResourceType": {
    "message": "Dokument"
  },
  "core/lib/i18n/i18n.js | firstContentfulPaintMetric": {
    "message": "First Contentful Paint"
  },
  "core/lib/i18n/i18n.js | firstMeaningfulPaintMetric": {
    "message": "Pierwsze wyrenderowanie elementu znaczącego"
  },
  "core/lib/i18n/i18n.js | fontResourceType": {
    "message": "Czcionka"
  },
  "core/lib/i18n/i18n.js | imageResourceType": {
    "message": "Obraz"
  },
  "core/lib/i18n/i18n.js | interactionToNextPaint": {
    "message": "Od interakcji do następnego wyrenderowania"
  },
  "core/lib/i18n/i18n.js | interactiveMetric": {
    "message": "Time to Interactive"
  },
  "core/lib/i18n/i18n.js | itemSeverityHigh": {
    "message": "Wysoki"
  },
  "core/lib/i18n/i18n.js | itemSeverityLow": {
    "message": "Niski"
  },
  "core/lib/i18n/i18n.js | itemSeverityMedium": {
    "message": "Średni"
  },
  "core/lib/i18n/i18n.js | largestContentfulPaintMetric": {
    "message": "Wyrenderowanie największej części treści"
  },
  "core/lib/i18n/i18n.js | maxPotentialFIDMetric": {
    "message": "Maks. potencjalne opóźnienie po pierwszej interakcji"
  },
  "core/lib/i18n/i18n.js | mediaResourceType": {
    "message": "Multimedia"
  },
  "core/lib/i18n/i18n.js | ms": {
    "message": "{timeInMs, number, milliseconds} ms"
  },
  "core/lib/i18n/i18n.js | otherResourceType": {
    "message": "Inne"
  },
  "core/lib/i18n/i18n.js | otherResourcesLabel": {
    "message": "Inne zasoby"
  },
  "core/lib/i18n/i18n.js | scriptResourceType": {
    "message": "Skrypt"
  },
  "core/lib/i18n/i18n.js | seconds": {
    "message": "{timeInMs, number, seconds} s"
  },
  "core/lib/i18n/i18n.js | speedIndexMetric": {
    "message": "Speed Index"
  },
  "core/lib/i18n/i18n.js | stylesheetResourceType": {
    "message": "Arkusz stylów"
  },
  "core/lib/i18n/i18n.js | thirdPartyResourceType": {
    "message": "Zewnętrzne"
  },
  "core/lib/i18n/i18n.js | total": {
    "message": "Łącznie"
  },
  "core/lib/i18n/i18n.js | totalBlockingTimeMetric": {
    "message": "Total Blocking Time"
  },
  "core/lib/i18n/i18n.js | totalResourceType": {
    "message": "Łącznie"
  },
  "core/lib/lh-error.js | badTraceRecording": {
    "message": "Podczas rejestrowania śladu wczytywania strony wystąpił błąd. Uruchom Lighthouse ponownie. ({errorCode})"
  },
  "core/lib/lh-error.js | criTimeout": {
    "message": "Upłynął czas oczekiwania na wstępne połączenie z Protokołem debugującym."
  },
  "core/lib/lh-error.js | didntCollectScreenshots": {
    "message": "Podczas wczytywania strony w Chrome nie zostały utworzone zrzuty ekranu. Zapewnij widoczność treści na stronie, a potem uruchom Lighthouse jeszcze raz. ({errorCode})"
  },
  "core/lib/lh-error.js | dnsFailure": {
    "message": "Serwery DNS nie potrafiły ustalić adresu podanej domeny."
  },
  "core/lib/lh-error.js | erroredRequiredArtifact": {
    "message": "Wystąpił błąd wymaganego elementu zbierającego {artifactName}: {errorMessage}"
  },
  "core/lib/lh-error.js | internalChromeError": {
    "message": "Wystąpił wewnętrzny błąd Chrome. Uruchom ponownie Chrome, a następnie Lighthouse."
  },
  "core/lib/lh-error.js | missingRequiredArtifact": {
    "message": "Wymagany element zbierający {artifactName} nie został uruchomiony."
  },
  "core/lib/lh-error.js | noFcp": {
    "message": "Strona nie wyrenderowała żadnej treści. Upewnij się, że okno przeglądarki jest na pierwszym planie podczas ładowania, i spróbuj ponownie. ({errorCode})"
  },
  "core/lib/lh-error.js | noLcp": {
    "message": "Strona nie wyświetlała treści powiązanych z renderowaniem największej części treści (LCP). Upewnij się, że strona zawiera prawidłowy element LCP, a następnie spróbuj ponownie. ({errorCode})"
  },
  "core/lib/lh-error.js | notHtml": {
    "message": "Podana strona nie ma formatu HTML (jest wyświetlana jako typ MIME {mimeType})."
  },
  "core/lib/lh-error.js | oldChromeDoesNotSupportFeature": {
    "message": "Ta wersja Chrome jest przestarzała i nie obsługuje wartości „{featureName}”. Aby zobaczyć wszystkie wyniki, użyj nowszej wersji."
  },
  "core/lib/lh-error.js | pageLoadFailed": {
    "message": "Narzędziu Lighthouse nie udało się całkowicie wczytać żądanej strony. Upewnij się, że testujesz właściwy URL, a serwer poprawnie odpowiada na wszystkie żądania."
  },
  "core/lib/lh-error.js | pageLoadFailedHung": {
    "message": "Narzędziu Lighthouse nie udało się całkowicie wczytać żądanego URL-a, ponieważ strona przestała odpowiadać."
  },
  "core/lib/lh-error.js | pageLoadFailedInsecure": {
    "message": "Podany URL nie ma prawidłowego certyfikatu bezpieczeństwa. {securityMessages}"
  },
  "core/lib/lh-error.js | pageLoadFailedInterstitial": {
    "message": "Przeglądarka Chrome zablokowała wczytywanie strony i wyświetliła komunikat pełnoekranowy. Upewnij się, że testujesz właściwy URL, a serwer poprawnie odpowiada na wszystkie żądania."
  },
  "core/lib/lh-error.js | pageLoadFailedWithDetails": {
    "message": "Narzędziu Lighthouse nie udało się całkowicie wczytać żądanej strony. Upewnij się, że testujesz właściwy URL, a serwer poprawnie odpowiada na wszystkie żądania. Szczegóły: {errorDetails}"
  },
  "core/lib/lh-error.js | pageLoadFailedWithStatusCode": {
    "message": "Narzędziu Lighthouse nie udało się całkowicie wczytać żądanej strony. Upewnij się, że testujesz właściwy URL, a serwer poprawnie odpowiada na wszystkie żądania. Kod stanu: {statusCode}"
  },
  "core/lib/lh-error.js | pageLoadTookTooLong": {
    "message": "Wczytywanie strony trwało zbyt długo. Skorzystaj z możliwości przyspieszenia wczytywania strony podanych w raporcie, a następnie ponownie uruchom Lighthouse. ({errorCode})"
  },
  "core/lib/lh-error.js | protocolTimeout": {
    "message": "Przekroczono przydzielony czas oczekiwania na odpowiedź protokołu DevTools. Metoda: {protocolMethod}"
  },
  "core/lib/lh-error.js | requestContentTimeout": {
    "message": "Przekroczono czas przydzielony na pobranie zasobów"
  },
  "core/lib/lh-error.js | targetCrashed": {
    "message": "W karcie przeglądarki nieoczekiwanie wystąpił poważny błąd."
  },
  "core/lib/lh-error.js | urlInvalid": {
    "message": "Podany URL jest nieprawidłowy."
  },
  "core/lib/navigation-error.js | warningStatusCode": {
    "message": "Narzędziu Lighthouse nie udało się całkowicie wczytać żądanej strony. Upewnij się, że testujesz właściwy URL, a serwer poprawnie odpowiada na wszystkie żądania. Kod stanu: {errorCode}"
  },
  "core/lib/navigation-error.js | warningXhtml": {
    "message": "Typ MIME strony to XHTML: Lighthouse nie obsługuje tego typu dokumentu"
  },
  "core/user-flow.js | defaultFlowName": {
    "message": "Wzorzec przeglądania ({url})"
  },
  "core/user-flow.js | defaultNavigationName": {
    "message": "Raport dotyczący nawigacji ({url})"
  },
  "core/user-flow.js | defaultSnapshotName": {
    "message": "Raport dotyczący określonego momentu ({url})"
  },
  "core/user-flow.js | defaultTimespanName": {
    "message": "Raport dotyczący okresu ({url})"
  },
  "flow-report/src/i18n/ui-strings.js | allReports": {
    "message": "Wszystkie raporty"
  },
  "flow-report/src/i18n/ui-strings.js | categories": {
    "message": "Kategorie"
  },
  "flow-report/src/i18n/ui-strings.js | categoryAccessibility": {
    "message": "Ułatwienia dostępu"
  },
  "flow-report/src/i18n/ui-strings.js | categoryBestPractices": {
    "message": "Sprawdzone metody"
  },
  "flow-report/src/i18n/ui-strings.js | categoryPerformance": {
    "message": "Wydajność"
  },
  "flow-report/src/i18n/ui-strings.js | categorySeo": {
    "message": "SEO"
  },
  "flow-report/src/i18n/ui-strings.js | desktop": {
    "message": "Wersja komputerowa"
  },
  "flow-report/src/i18n/ui-strings.js | helpDialogTitle": {
    "message": "Omówienie raportu dotyczącego procesu Lighthouse"
  },
  "flow-report/src/i18n/ui-strings.js | helpLabel": {
    "message": "Omówienie procesów"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionNavigation": {
    "message": "Używaj raportów dotyczących nawigacji do tych celów:"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionSnapshot": {
    "message": "Używaj raportów dotyczących określonego momentu do tych celów:"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionTimespan": {
    "message": "Używaj raportów dotyczących okresu do tych celów:"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation1": {
    "message": "uzyskiwanie danych o wydajności Lighthouse"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation2": {
    "message": "sprawdzanie parametrów szybkości ładowania strony, takich jak wyrenderowanie największej części treści czy Speed Index"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation3": {
    "message": "ocena możliwości progresywnej aplikacji internetowej"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot1": {
    "message": "znajdowanie problemów dotyczących ułatwień dostępu w aplikacjach jednostronicowych lub złożonych formularzach"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot2": {
    "message": "ocena sprawdzonych metod dotyczących elementów menu i interfejsu ukrytych za interakcją"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan1": {
    "message": "pomiar czasu wykonywania przesunięć układu i JavaScriptu w serii interakcji"
  },
  "flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan2": {
    "message": "odkrywanie możliwości poprawy wydajności w celu usprawnienia działania istniejących od dawna stron i aplikacji jednostronicowych"
  },
  "flow-report/src/i18n/ui-strings.js | highestImpact": {
    "message": "Największy wpływ"
  },
  "flow-report/src/i18n/ui-strings.js | informativeAuditCount": {
    "message": "{numInformative,plural, =1{{numInformative} audyt informacyjny}few{{numInformative} audyty informacyjne}many{{numInformative} audytów informacyjnych}other{{numInformative} audytu informacyjnego}}"
  },
  "flow-report/src/i18n/ui-strings.js | mobile": {
    "message": "Wersja mobilna"
  },
  "flow-report/src/i18n/ui-strings.js | navigationDescription": {
    "message": "Wczytywanie strony"
  },
  "flow-report/src/i18n/ui-strings.js | navigationLongDescription": {
    "message": "Raporty dotyczące nawigacji analizują ładowanie pojedynczej strony – dokładnie tak jak oryginalne raporty Lighthouse."
  },
  "flow-report/src/i18n/ui-strings.js | navigationReport": {
    "message": "Raport dotyczący nawigacji"
  },
  "flow-report/src/i18n/ui-strings.js | navigationReportCount": {
    "message": "{numNavigation,plural, =1{{numNavigation} raport dotyczący nawigacji}few{{numNavigation} raporty dotyczące nawigacji}many{{numNavigation} raportów dotyczących nawigacji}other{{numNavigation} raportu dotyczącego nawigacji}}"
  },
  "flow-report/src/i18n/ui-strings.js | passableAuditCount": {
    "message": "{numPassableAudits,plural, =1{{numPassableAudits} audyt zadowalający}few{{numPassableAudits} audyty zadowalające}many{{numPassableAudits} audytów zadowalających}other{{numPassableAudits} audytu zadowalającego}}"
  },
  "flow-report/src/i18n/ui-strings.js | passedAuditCount": {
    "message": "{numPassed,plural, =1{{numPassed} audyt zaliczony}few{{numPassed} audyty zaliczone}many{{numPassed} audytów zaliczonych}other{{numPassed} audytu zaliczone}}"
  },
  "flow-report/src/i18n/ui-strings.js | ratingAverage": {
    "message": "Średnia"
  },
  "flow-report/src/i18n/ui-strings.js | ratingError": {
    "message": "Błąd"
  },
  "flow-report/src/i18n/ui-strings.js | ratingFail": {
    "message": "Słaba"
  },
  "flow-report/src/i18n/ui-strings.js | ratingPass": {
    "message": "Dobra"
  },
  "flow-report/src/i18n/ui-strings.js | save": {
    "message": "Zapisz"
  },
  "flow-report/src/i18n/ui-strings.js | snapshotDescription": {
    "message": "Zarejestrowany stan strony"
  },
  "flow-report/src/i18n/ui-strings.js | snapshotLongDescription": {
    "message": "Raporty dotyczące określonego momentu analizują strony w konkretnym stanie, zwykle po interakcji z użytkownikiem."
  },
  "flow-report/src/i18n/ui-strings.js | snapshotReport": {
    "message": "Raport dotyczący określonego momentu"
  },
  "flow-report/src/i18n/ui-strings.js | snapshotReportCount": {
    "message": "{numSnapshot,plural, =1{{numSnapshot} raport dotyczący określonego momentu}few{{numSnapshot} raporty dotyczące określonego momentu}many{{numSnapshot} raportów dotyczących określonego momentu}other{{numSnapshot} raportu dotyczącego określonego momentu}}"
  },
  "flow-report/src/i18n/ui-strings.js | summary": {
    "message": "Podsumowanie"
  },
  "flow-report/src/i18n/ui-strings.js | timespanDescription": {
    "message": "Interakcje użytkownika"
  },
  "flow-report/src/i18n/ui-strings.js | timespanLongDescription": {
    "message": "Raporty dotyczące okresu analizują dowolne okresy, zwykle obejmujące interakcje z użytkownikiem."
  },
  "flow-report/src/i18n/ui-strings.js | timespanReport": {
    "message": "Raport dotyczący okresu"
  },
  "flow-report/src/i18n/ui-strings.js | timespanReportCount": {
    "message": "{numTimespan,plural, =1{{numTimespan} raport dotyczący okresu}few{{numTimespan} raporty dotyczące okresu}many{{numTimespan} raportów dotyczących okresu}other{{numTimespan} raportu dotyczącego okresu}}"
  },
  "flow-report/src/i18n/ui-strings.js | title": {
    "message": "Raport Lighthouse dotyczący przepływu użytkowników"
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | AuthorizationCoveredByWildcard": {
    "message": "W przypadku obsługi nagłówka CORS Access-Control-Allow-Headers autoryzacja nie będzie przeprowadzana przy użyciu symboli wieloznacznych (*)."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CSSSelectorInternalMediaControlsOverlayCastButton": {
    "message": "Aby wyłączyć domyślną integrację przesyłania, nie używaj selektora -internal-media-controls-overlay-cast-button. Zamiast tego użyj atrybutu disableRemotePlayback."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CSSValueAppearanceSliderVertical": {
    "message": "Wartość wyglądu CSS slider-vertical nie jest ustandaryzowana i zostanie usunięta."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CanRequestURLHTTPContainingNewline": {
    "message": "Żądania zasobów, których adresy URL zawierają znaki \\(n|r|t) z usuniętymi odstępami i znaki mniejszości (<), są blokowane. Usuń nowe wiersze i zakoduj znaki mniejszości z miejsc takich jak wartości atrybutów elementów, aby umożliwić wczytywanie tych zasobów."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ChromeLoadTimesConnectionInfo": {
    "message": "Wycofano interfejs chrome.loadTimes(). Użyj standaryzowanego interfejsu API: Navigation Timing 2."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ChromeLoadTimesFirstPaintAfterLoadTime": {
    "message": "Wycofano chrome.loadTimes(). Użyj standaryzowanego interfejsu API: Paint Timing."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ChromeLoadTimesWasAlternateProtocolAvailable": {
    "message": "Interfejs chrome.loadTimes() został wycofany. Użyj standaryzowanego interfejsu API: nextHopProtocol w Navigation Timing 2."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CookieWithTruncatingChar": {
    "message": "Pliki cookie zawierające znak \\(0|r|n) będą odrzucane (nie będą skracane)."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CrossOriginAccessBasedOnDocumentDomain": {
    "message": "Złagodzenie zasady dotyczącej tej samej domeny przez ustawienie document.domain zostało wycofane i będzie domyślnie wyłączone. To ostrzeżenie o wycofaniu dotyczy dostępu z tej samej domeny, który był włączony przez ustawienie document.domain."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CrossOriginWindowAlert": {
    "message": "Możliwość aktywowania funkcji window.alert z elementów iframe z innych domen została wycofana i w przyszłości zostanie usunięta."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CrossOriginWindowConfirm": {
    "message": "Możliwość aktywowania funkcji window.confirm z elementów iframe z innych domen została wycofana i w przyszłości zostanie usunięta."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | DataUrlInSvgUse": {
    "message": "Obsługa danych: adresy URL w funkcji SVGUseElement zostały wycofane i w przyszłości zostaną usunięte."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | GeolocationInsecureOrigin": {
    "message": "Metody getCurrentPosition() i watchPosition() nie działają już w przypadku niezabezpieczonych źródeł. Aby używać tej funkcji, rozważ przełączenie aplikacji na zabezpieczone źródło, np. HTTPS. Więcej informacji znajdziesz na stronie https://goo.gle/chrome-insecure-origins."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | GeolocationInsecureOriginDeprecatedNotRemoved": {
    "message": "Wycofano metody getCurrentPosition() i watchPosition() w niezabezpieczonych źródłach. Aby używać tej funkcji, rozważ przełączenie aplikacji na zabezpieczone źródło, np. HTTPS. Więcej informacji znajdziesz na stronie https://goo.gle/chrome-insecure-origins."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | GetUserMediaInsecureOrigin": {
    "message": "Metoda getUserMedia() nie działa już w przypadku niezabezpieczonych źródeł. Aby używać tej funkcji, rozważ przełączenie aplikacji na zabezpieczone źródło, np. HTTPS. Więcej informacji znajdziesz na stronie https://goo.gle/chrome-insecure-origins."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | HostCandidateAttributeGetter": {
    "message": "Pole RTCPeerConnectionIceErrorEvent.hostCandidate zostało wycofane. Zamiast niego użyj pola RTCPeerConnectionIceErrorEvent.address lub RTCPeerConnectionIceErrorEvent.port."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | IdentityInCanMakePaymentEvent": {
    "message": "Dane pochodzenia sprzedawcy i arbitralne dane ze zdarzenia skryptu service worker canmakepayment nie są już używane i zostaną usunięte: topOrigin, paymentRequestOrigin, methodData, modifiers."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | InsecurePrivateNetworkSubresourceRequest": {
    "message": "Witryna zażądała zasobu podrzędnego z sieci, do której miała dostęp wyłącznie z powodu uprawnień sieci użytkownika. Takie żądania ujawniają w internecie niepubliczne urządzenia i serwery, zwiększając ryzyko ataku polegającego na sfałszowaniu żądania z innej witryny (CSRF) lub wycieku informacji. Aby zapobiegać temu ryzyku, wycofujemy z Chrome możliwość przesyłania żądań do niepublicznych zasobów podrzędnych, gdy są wysyłane z niezabezpieczonych kontekstów. Chrome będzie je blokować."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | InterestGroupDailyUpdateUrl": {
    "message": "Nazwa pola dailyUpdateUrl dla elementu InterestGroups przekazanego do joinAdInterestGroup() została zmieniona na updateUrl, aby trafniej odzwierciedlała jego działanie."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | IntlV8BreakIterator": {
    "message": "Interfejs Intl.v8BreakIterator został wycofany. Zamiast niego użyj interfejsu Intl.Segmenter."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LocalCSSFileExtensionRejected": {
    "message": "CSS nie można ładować z adresów URL file:, chyba że są zakończone rozszerzeniem pliku .css."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | MediaSourceAbortRemove": {
    "message": "Używanie metody SourceBuffer.abort() w celu przerwania procesu usuwania zakresu asynchronicznego przez metodę remove() zostało wycofane z powodu zmiany specyfikacji. Obsługa zostanie wycofana w przyszłości. Zamiast tego zacznij nasłuchiwać zdarzenia updateend. Metoda abort() służy tylko do przerywania procesu dołączania asynchronicznych multimediów lub resetowania stanu parsera."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | MediaSourceDurationTruncatingBuffered": {
    "message": "Ustawianie MediaSource.duration poniżej najwyższej sygnatury czasowej prezentacji dowolnych buforowanych ramek kodu zostało wycofane z powodu zmiany specyfikacji. W przyszłości wycofamy możliwość usuwania przyciętych multimediów buforowanych. Zamiast tego użyj bezpośrednio metod remove(newDuration, oldDuration) w przypadku wszystkich elementów sourceBuffers, gdzie newDuration < oldDuration."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | NoSysexWebMIDIWithoutPermission": {
    "message": "Web MIDI poprosi o uprawnienia do użycia, nawet jeśli w interfejsie MIDIOptions nie określono komunikatów SysEx."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | NotificationInsecureOrigin": {
    "message": "Nie można już używać interfejsu Notification API z niezabezpieczonych źródeł. Przełącz aplikację na zabezpieczone źródło, np. HTTPS. Więcej informacji znajdziesz na stronie https://goo.gle/chrome-insecure-origins."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | NotificationPermissionRequestedIframe": {
    "message": "Żądanie uprawnienia dla interfejsu Notification API nie może już być wysyłane z elementów iframe z innych domen. Rozważ wysłanie żądania o przyznanie uprawnienia z ramki najwyższego poziomu lub otwarcie nowego okna."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ObsoleteCreateImageBitmapImageOrientationNone": {
    "message": "Opcja imageOrientation: 'none' w metodzie createImageBitmap została wycofana. Użyj tej metody z opcją „\\\\{imageOrientation: 'from-image'\\\\}”."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ObsoleteWebRtcCipherSuite": {
    "message": "Partner negocjuje przestarzałą wersję (D)TLS. Poproś go o rozwiązanie problemu."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | OverflowVisibleOnReplacedElement": {
    "message": "Jeśli określisz właściwość overflow: visible w tagach img, video i canvas, mogą one wyświetlać treści wizualne poza granicami elementu. Więcej informacji znajdziesz na https://github.com/WICG/shared-element-transitions/blob/main/debugging_overflow_on_images.md."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | OverrideFlashEmbedwithHTML": {
    "message": "Starszy kod do umieszczania filmów Flash został przepisany na element iframe HTML. Flash już od dawna nie działa, ta metoda z przepisywaniem została wycofana i w przyszłości może zostać usunięta."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PaymentInstruments": {
    "message": "Interfejs paymentManager.instruments został wycofany. Zamiast niego w przypadku modułów obsługi płatności używaj instalacji „just-in-time”."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PaymentRequestCSPViolation": {
    "message": "Twoje wywołanie PaymentRequest pomijało dyrektywę Content Security Policy (CSP) connect-src. To ominięcie zostało wycofane. Dodaj identyfikator formy płatności z interfejsu API PaymentRequest (w polu supportedMethods) do dyrektywy CSP connect-src."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PersistentQuotaType": {
    "message": "Interfejs StorageType.persistent został wycofany. Zamiast niego użyj standaryzowanego interfejsu navigator.storage."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PictureSourceSrc": {
    "message": "Element <source src> z elementem nadrzędnym <picture> jest nieprawidłowy i dlatego jest ignorowany. Zamiast niego użyj elementu <source srcset>."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedCancelAnimationFrame": {
    "message": "Metoda webkitRequestAnimationFrame jest specyficzna dla dostawcy. Użyj standardowej metody cancelAnimationFrame."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedRequestAnimationFrame": {
    "message": "Metoda webkitRequestAnimationFrame jest specyficzna dla dostawcy. Użyj standardowej metody requestAnimationFrame."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoDisplayingFullscreen": {
    "message": "Interfejs HTMLVideoElement.webkitDisplayingFullscreen został wycofany. Użyj interfejsu Document.fullscreenElement."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoEnterFullScreen": {
    "message": "Interfejs HTMLVideoElement.webkitEnterFullScreen() został wycofany. Użyj interfejsu Element.requestFullscreen()."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoEnterFullscreen": {
    "message": "Interfejs HTMLVideoElement.webkitEnterFullscreen() został wycofany. Użyj interfejsu Element.requestFullscreen()."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoExitFullScreen": {
    "message": "Interfejs HTMLVideoElement.webkitExitFullScreen() został wycofany. Użyj interfejsu Document.exitFullscreen()."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoExitFullscreen": {
    "message": "Interfejs HTMLVideoElement.webkitExitFullscreen() został wycofany. Użyj interfejsu Document.exitFullscreen()."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoSupportsFullscreen": {
    "message": "Interfejs HTMLVideoElement.webkitSupportsFullscreen został wycofany. Użyj interfejsu Document.fullscreenEnabled."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrivacySandboxExtensionsAPI": {
    "message": "Wycofujemy interfejs API chrome.privacy.websites.privacySandboxEnabled, ale pozostanie on aktywny, aby zapewniał zgodność wsteczną do czasu opublikowania wersji M113. Zamiast niego używaj interfejsów chrome.privacy.websites.topicsEnabled, chrome.privacy.websites.fledgeEnabled i chrome.privacy.websites.adMeasurementEnabled. Więcej informacji znajdziesz na stronie https://developer.chrome.com/docs/extensions/reference/privacy/#property-websites-privacySandboxEnabled."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RTCConstraintEnableDtlsSrtpFalse": {
    "message": "Ograniczenie DtlsSrtpKeyAgreement zostało usunięte. W przypadku tego ograniczenia określono wartość false, co jest interpretowane jako próba użycia usuniętej metody SDES key negotiation. Ta funkcja została usunięta. Użyj usługi, która obsługuje DTLS key negotiation."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RTCConstraintEnableDtlsSrtpTrue": {
    "message": "Ograniczenie DtlsSrtpKeyAgreement zostało usunięte. W przypadku tego ograniczenia określono wartość true, która nie ma zastosowania. W razie potrzeby możesz usunąć to ograniczenie."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RTCPeerConnectionGetStatsLegacyNonCompliant": {
    "message": "Metoda getStats() z wywołaniem zwrotnym nie jest już używana i zostanie usunięta. Użyj metody getStats() zgodnej ze specyfikacją."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RangeExpand": {
    "message": "Interfejs Range.expand() został wycofany. Użyj interfejsu Selection.modify()."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RequestedSubresourceWithEmbeddedCredentials": {
    "message": "Żądania zasobów podrzędnych, których adresy URL zawierają umieszczone dane logowania (np. https://user:pass@host/), są blokowane."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RtcpMuxPolicyNegotiate": {
    "message": "Opcja rtcpMuxPolicy jest wycofana i zostanie usunięta."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | SharedArrayBufferConstructedWithoutIsolation": {
    "message": "SharedArrayBuffer będzie wymagać witryny izolowanej od zasobów z innych domen. Więcej informacji znajdziesz na stronie https://developer.chrome.com/blog/enabling-shared-array-buffer/."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | TextToSpeech_DisallowedByAutoplay": {
    "message": "Możliwość wywołania interfejsu speechSynthesis.speak() bez aktywacji użytkownika jest wycofana i zostanie usunięta."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | UnloadHandler": {
    "message": "Niezaładowane detektory zdarzeń zostały wycofane i zostaną usunięte"
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | V8SharedArrayBufferConstructedInExtensionWithoutIsolation": {
    "message": "Aby nadal używać obiektu SharedArrayBuffer, rozszerzenia powinny korzystać z witryn izolowanych od zasobów z innych domen. Więcej informacji znajdziesz na stronie https://developer.chrome.com/docs/extensions/mv3/cross-origin-isolation/."
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | XHRJSONEncodingDetection": {
    "message": "Kodowanie UTF-16 nie jest obsługiwane w kodzie JSON odpowiedzi na żądanie XMLHttpRequest"
  },
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload": {
    "message": "Synchroniczny interfejs XMLHttpRequest w głównym wątku został wycofany z powodu negatywnego wpływu na sposób obsługi. Więcej informacji znajdziesz na stronie https://xhr.spec.whatwg.org/."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | animation": {
    "message": "Animacja"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | description": {
    "message": "Przesunięcia układu występują, gdy elementy poruszają się bez interakcji ze strony użytkownika. [Zbadaj przyczyny przesunięć układu](https://web.dev/articles/optimize-cls) takie jak dodanie lub usunięcie elementów lub zmiana czcionek podczas wczytywania strony."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | injectedIframe": {
    "message": "Wstrzyknięty element iframe"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | layoutShiftCluster": {
    "message": "Klaster przesunięć układu dla {PH1}"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | noCulprits": {
    "message": "Nie udało się wykryć przyczyn problemów związanych z przesunięciem układu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | noLayoutShifts": {
    "message": "Brak przesunięć układu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | title": {
    "message": "Przyczyny problemów związanych z przesunięciem układu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | topCulprits": {
    "message": "Najczęstsze przyczyny problemów związanych z przesunięciem układu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | unsizedImage": {
    "message": "Element graficzny bez określonego rozmiaru"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | webFont": {
    "message": "Czcionka internetowa"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | worstCluster": {
    "message": "Najgorszy klaster"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | worstLayoutShiftCluster": {
    "message": "Najgorszy klaster przesunięć układu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | cacheTTL": {
    "message": "Czas przechowywania danych w pamięci podręcznej"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | description": {
    "message": "Długi czas przechowywania w pamięci podręcznej może przyspieszyć ponowne otwarcie strony. [Więcej informacji](https://web.dev/uses-long-cache-ttl/)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | noRequestsToCache": {
    "message": "Brak żądań z zasadami nieefektywnej pamięci podręcznej"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | others": {
    "message": "Inne elementy: {PH1}"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | requestColumn": {
    "message": "Żądanie"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | title": {
    "message": "Używaj efektywnego czasu przechowywania w pamięci podręcznej"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | description": {
    "message": "Duży DOM może wydłużać obliczenia stylów i przeformatowania układu, co wpływa na responsywność strony. Duży DOM zwiększy też wykorzystanie pamięci. [Jak unikać nadmiernego rozmiaru DOM](https://developer.chrome.com/docs/lighthouse/performance/dom-size/)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | duration": {
    "message": "Czas trwania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | element": {
    "message": "Element"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | largeLayout": {
    "message": "Układ (obiekty: {PH1})"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | largeStyleRecalc": {
    "message": "Ponowne obliczanie stylu ({PH1} elementy)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | maxChildren": {
    "message": "Maksymalna liczba elementów podrzędnych"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | maxDOMDepth": {
    "message": "Głębokość DOM"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | statistic": {
    "message": "Statystyki"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | title": {
    "message": "Optymalizuj rozmiar DOM"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | topUpdatesDescription": {
    "message": "To są największe zdarzenia ponownego obliczania układu i stylu. Wpływ na wydajność można zmniejszyć, upraszczając DOM."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | totalElements": {
    "message": "Łączna liczba elementów"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | value": {
    "message": "Wartość"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | description": {
    "message": "Pierwsze żądanie sieciowe jest najważniejsze.  Zmniejsz jego opóźnienie, unikając przekierowań, zapewniając szybką reakcję serwera i włączając kompresję tekstu."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | failedRedirects": {
    "message": "Zawierało przekierowania (liczba przekierowań: {PH1}, +{PH2})"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | failedServerResponseTime": {
    "message": "Serwer zareagował z opóźnieniem (zaobserwowany czas: {PH1})"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | failedTextCompression": {
    "message": "Nie zastosowano kompresji"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | passingRedirects": {
    "message": "Nie używa przekierowań"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | passingServerResponseTime": {
    "message": "Serwer odpowiada szybko (zaobserwowany czas: {PH1})"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | passingTextCompression": {
    "message": "Stosuje kompresję tekstu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | redirectsLabel": {
    "message": "Przekierowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | serverResponseTimeLabel": {
    "message": "Czas reakcji serwera"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | title": {
    "message": "Czas oczekiwania w przypadku żądania dokumentu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | uncompressedDownload": {
    "message": "Pobieranie nieskompresowanych plików"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DuplicatedJavaScript.js | columnDuplicatedBytes": {
    "message": "Zduplikowane bajty"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DuplicatedJavaScript.js | columnSource": {
    "message": "Źródło"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DuplicatedJavaScript.js | description": {
    "message": "Usuń z pakietów duplikaty dużych modułów JavaScript, aby zmniejszyć ilość danych niepotrzebnie przesyłanych w sieci."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/DuplicatedJavaScript.js | title": {
    "message": "Duplikat kodu JavaScript"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | description": {
    "message": "Sugerujemy ustawienie właściwości [font-display](https://developer.chrome.com/blog/font-display) na swap lub optional, aby tekst był zawsze widoczny. Element swap można dodatkowo zoptymalizować za pomocą [zastąpień danych o czcionkach](https://developer.chrome.com/blog/font-fallbacks) – pozwoli to zmniejszyć przesunięcia układu."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | fontColumn": {
    "message": "Czcionka"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | title": {
    "message": "Wyświetlanie czcionki"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | wastedTimeColumn": {
    "message": "Stracony czas"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | anonymous": {
    "message": "(anonimowa)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | description": {
    "message": "Wymuszony przepływ występuje, gdy JavaScript wysyła zapytania o właściwości geometryczne (takie jak offsetWidth) po unieważnieniu stylów przez zmianę stanu DOM. Może to spowodować obniżenie wydajności. Dowiedz się więcej o [wymuszonych przeformatowaniach](https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing#avoid-forced-synchronous-layouts) i możliwych sposobach ich ograniczenia."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | relatedStackTrace": {
    "message": "Zrzut stosu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | title": {
    "message": "Wymuszone przeformatowanie"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | topTimeConsumingFunctionCall": {
    "message": "Najczęstsze wywołanie funkcji"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | totalReflowTime": {
    "message": "Łączny czas przeformatowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | unattributed": {
    "message": "[nieprzypisane]"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | description": {
    "message": "Zacznij analizę od najdłuższego elementu podrzędnego. [Można zminimalizować opóźnienia](https://web.dev/articles/optimize-inp#optimize_interactions). Aby skrócić czas przetwarzania, [zoptymalizuj koszty wątku głównego](https://web.dev/articles/optimize-long-tasks), często JS."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | duration": {
    "message": "Czas trwania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | inputDelay": {
    "message": "Opóźnienie wejściowe"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | noInteractions": {
    "message": "Nie wykryto interakcji"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | presentationDelay": {
    "message": "Opóźnienie prezentacji"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | processingDuration": {
    "message": "Czas przetwarzania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | subpart": {
    "message": "Podczęść"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | title": {
    "message": "Zestawienie INP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | description": {
    "message": "Skrócenie czasu pobierania obrazów może poprawić postrzegany czas wczytywania strony i LCP. [Dowiedz się więcej o optymalizowaniu rozmiaru obrazu](https://developer.chrome.com/docs/lighthouse/performance/uses-optimized-images/)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | estimatedSavings": {
    "message": "{PH1} (szac. {PH2})"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | noOptimizableImages": {
    "message": "Brak obrazów do zoptymalizowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | optimizeFile": {
    "message": "Zoptymalizuj rozmiar pliku"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | others": {
    "message": "Inne elementy: {PH1}"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | title": {
    "message": "Ulepsz dostarczanie obrazów"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | useCompression": {
    "message": "Zwiększenie współczynnika kompresji obrazu może zmniejszyć rozmiar pobierania."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | useModernFormat": {
    "message": "Pobieranie tego obrazu może być szybsze, jeśli użyjesz nowoczesnego formatu (WebP, AVIF) lub zwiększysz kompresję obrazu."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | useResponsiveSize": {
    "message": "Ten plik obrazu jest większy niż powinien ({PH1}) przy wyświetlanych wymiarach ({PH2}). Aby zmniejszyć rozmiar pobierania obrazu, użyj obrazów elastycznych."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | useVideoFormat": {
    "message": "Używanie formatów wideo zamiast GIF-ów może zmniejszyć rozmiar pobieranych treści animowanych."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | description": {
    "message": "Każda [część ma określone strategie poprawy](https://web.dev/articles/optimize-lcp#lcp-breakdown). W idealnym przypadku większość czasu LCP powinna być poświęcona na ładowanie zasobów, a nie na opóźnienia."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | duration": {
    "message": "Czas trwania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | elementRenderDelay": {
    "message": "Opóźnienie renderowania elementu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | fieldDuration": {
    "message": "Pole p75"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | noLcp": {
    "message": "Nie wykryto LCP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | resourceLoadDelay": {
    "message": "Opóźnienie ładowania zasobów"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | resourceLoadDuration": {
    "message": "Czas wczytywania zasobu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | subpart": {
    "message": "Podczęść"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | timeToFirstByte": {
    "message": "Czas do pierwszego bajtu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | title": {
    "message": "Zestawienie LCP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | description": {
    "message": "Zoptymalizuj LCP, zapewniając natychmiastową [wykrywalność](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay) obrazu LCP w kodzie HTML i [unikając leniwego ładowania](https://web.dev/articles/lcp-lazy-loading)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | fetchPriorityApplied": {
    "message": "Zastosowano fetchpriority=high"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | fetchPriorityShouldBeApplied": {
    "message": "Należy zastosować fetchpriority=high"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | lazyLoadNotApplied": {
    "message": "nie zastosowano leniwego ładowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | lcpLoadDelay": {
    "message": "Obraz LCP został wczytany {PH1} po najstarszym punkcie początkowym."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | noLcp": {
    "message": "Nie wykryto LCP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | noLcpResource": {
    "message": "Nie wykryto zasobu LCP, ponieważ LCP nie jest obrazem"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | requestDiscoverable": {
    "message": "Prośbę można znaleźć w dokumencie początkowym"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | title": {
    "message": "Wykrywanie żądań LCP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LegacyJavaScript.js | columnScript": {
    "message": "Skrypt"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LegacyJavaScript.js | columnWastedBytes": {
    "message": "Zmarnowane bajty"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LegacyJavaScript.js | description": {
    "message": "Elementy polyfill i przekształcenia umożliwiają obsługę nowych funkcji JavaScript przez starsze przeglądarki. Jednak nowoczesne przeglądarki nie potrzebują wielu takich elementów. Rozważ zmianę procesu kompilacji JavaScriptu, aby nie transpilować funkcji [podstawowych](https://web.dev/articles/baseline-and-polyfills), chyba że potrzebna jest obsługa starszych przeglądarek. [Dlaczego większość witryn może wdrażać kod ES6+ bez transpilacji](https://philipwalton.com/articles/the-state-of-es5-on-the-web/)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/LegacyJavaScript.js | title": {
    "message": "Starszy kod JavaScript"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | description": {
    "message": "Protokoły HTTP/2 i HTTP/3 mają wiele zalet w porównaniu z HTTP/1.1, np. multipleksowanie. [Więcej informacji o korzystaniu z nowoczesnego protokołu HTTP](https://developer.chrome.com/docs/lighthouse/best-practices/uses-http2/)"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | noOldProtocolRequests": {
    "message": "Żadne żądanie nie używało protokołu HTTP/1.1 lub jego bieżące użycie nie stwarza znaczącej możliwości optymalizacji. Żądania HTTP/1.1 są oznaczane tylko wtedy, gdy co najmniej 6 elementów statycznych pochodzi z tego samego źródła i nie są one udostępniane z lokalnego środowiska programistycznego ani ze źródła zewnętrznego."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | protocol": {
    "message": "Protokół"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | request": {
    "message": "Żądanie"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | title": {
    "message": "Nowoczesny protokół HTTP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | columnOrigin": {
    "message": "Źródło"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | columnRequest": {
    "message": "Żądanie"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | columnSource": {
    "message": "Źródło"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | columnTime": {
    "message": "Czas"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | columnWastedMs": {
    "message": "Szacunkowe oszczędności LCP"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | crossoriginWarning": {
    "message": "Nieużywany link typu preconnect. Sprawdź, czy atrybut crossorigin jest używany prawidłowo."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | description": {
    "message": "Aby przyspieszyć ładowanie strony, [unikaj tworzenia łańcuchów żądań krytycznych](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains): skróć łańcuchy, zmniejsz rozmiar pobieranych zasobów lub opóźnij pobieranie zasobów, które nie są niezbędne."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | estSavingTableDescription": {
    "message": "Dodaj wskazówki [preconnect](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preconnect/) do najważniejszych źródeł, ale staraj się używać ich nie więcej niż 4."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | estSavingTableTitle": {
    "message": "Kandydaci do połączenia w trybie preconnect"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | maxCriticalPathLatency": {
    "message": "Maksymalne opóźnienie ścieżki krytycznej:"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | noNetworkDependencyTree": {
    "message": "Zależności sieciowe nie mają wpływu na żadne zadania renderowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | noPreconnectCandidates": {
    "message": "Żadne dodatkowe źródła nie są dobrymi kandydatami do połączenia w trybie preconnect"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | noPreconnectOrigins": {
    "message": "nie nawiązano połączeń ze źródłami w trybie preconnect"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | preconnectOriginsTableDescription": {
    "message": "Wskazówki [preconnect](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preconnect/) pomagają przeglądarce nawiązać połączenie wcześniej w procesie wczytywania strony, co pozwala zaoszczędzić czas podczas wysyłania pierwszego żądania do tego źródła. Poniżej znajdziesz listę źródeł, z którymi strona nawiązała połączenie w trybie preconnect."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | preconnectOriginsTableTitle": {
    "message": "Źródła połączone w trybie preconnect"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | title": {
    "message": "Drzewo zależności sieciowych"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | tooManyPreconnectLinksWarning": {
    "message": "Znaleziono więcej niż 4 linki preconnect. Takich linków należy używać oszczędnie i tylko w przypadku najważniejszych źródeł."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | unusedWarning": {
    "message": "Nieużywany link typu preconnect. Linki preconnect stosuj tylko do źródeł, o które strona prawdopodobnie poprosi."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | warningDescription": {
    "message": "Aby przyspieszyć ładowanie strony, unikaj tworzenia łańcuchów żądań krytycznych: skróć łańcuchy, zmniejsz rozmiar pobieranych zasobów lub opóźnij pobieranie zasobów, które nie są niezbędne."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | description": {
    "message": "Żądania blokują początkowe renderowanie strony, co może opóźniać LCP. [Opóźnianie lub wstawianie](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources) może skierować te żądania sieciowe poza ścieżkę krytyczną."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | duration": {
    "message": "Czas trwania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | noRenderBlocking": {
    "message": "Brak żądań blokujących renderowanie dla tej nawigacji"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | renderBlockingRequest": {
    "message": "Żądanie"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | title": {
    "message": "Prośby o zablokowanie renderowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | description": {
    "message": "Jeśli koszty ponownego obliczania stylu są wysokie, optymalizacja selektora może je obniżyć. [Zoptymalizuj selektory](https://developer.chrome.com/docs/devtools/performance/selector-stats), które mają zarówno długi czas działania, jak i wysoki odsetek ścieżek powolnych. Prostsze selektory, mniejsza ich liczba oraz mniejszy i płytszy DOM pozwolą zmniejszyć koszty dopasowywania."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | elapsed": {
    "message": "Upłynęło"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | enableSelectorData": {
    "message": "Nie znaleziono danych selektora CSS. Statystyki selektora CSS muszą być włączone w ustawieniach panelu wydajności."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | matchAttempts": {
    "message": "Próby dopasowania"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | matchCount": {
    "message": "Liczba zgodnych elementów"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | title": {
    "message": "Koszty selektora CSS"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | topSelectorElapsedTime": {
    "message": "Czas, jaki upłynął od wyboru najpopularniejszego elementu"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | topSelectorMatchAttempt": {
    "message": "Najpopularniejsza próba dopasowania selektora"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | topSelectors": {
    "message": "Najpopularniejsze selektory"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | total": {
    "message": "Łącznie"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | columnMainThreadTime": {
    "message": "Czas w wątku głównym"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | columnThirdParty": {
    "message": "Spoza witryny"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | columnTransferSize": {
    "message": "Rozmiar przesłanych danych"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | description": {
    "message": "Kod spoza witryny może znacznie spowalniać wczytywanie stron. [Ogranicz i opóźnij wczytywanie takiego kodu](https://web.dev/articles/optimizing-content-efficiency-loading-third-party-javascript/), aby nadać priorytet treściom ze swojej strony."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | noThirdParties": {
    "message": "Nie znaleziono treści zewnętrznych"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | title": {
    "message": "Spoza witryny"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | description": {
    "message": "Interakcje dotykowe mogą być [opóźnione nawet o 300 ms](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/), jeśli widoczny obszar nie jest zoptymalizowany dla telefonów."
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | mobileTapDelayLabel": {
    "message": "Opóźnienie kliknięcia na urządzeniu mobilnym"
  },
  "node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | title": {
    "message": "Zoptymalizuj widoczny obszar dla telefonów"
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | HTTPMethodNotGET": {
    "message": "Tylko strony wczytane za pomocą żądania GET kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | HTTPStatusNotOK": {
    "message": "W pamięci mogą być przechowywane tylko strony z kodem stanu 2XX."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | JavaScriptExecution": {
    "message": "Przeglądarka Chrome wykryła próbę wykonania JavaScriptu podczas przechowywania strony w pamięci podręcznej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | appBanner": {
    "message": "Strony, które poprosiły o AppBanner, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | backForwardCacheDisabled": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona przez flagi. Wejdź na chrome://flags/#back-forward-cache, aby włączyć ją lokalnie na tym urządzeniu."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | backForwardCacheDisabledByCommandLine": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona przez wiersz poleceń."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | backForwardCacheDisabledByLowMemory": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona z powodu niewystarczającej ilości pamięci."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | backForwardCacheDisabledForDelegate": {
    "message": "Pamięć podręczna stanu strony internetowej nie jest obsługiwana w ramach przekazywania."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | backForwardCacheDisabledForPrerender": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona w przypadku wstępnego renderowania."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | broadcastChannel": {
    "message": "Strona nie może być przechowywana w pamięci podręcznej, bo zawiera wystąpienie BroadcastChannel z zarejestrowanymi detektorami."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | cacheControlNoStore": {
    "message": "Strony z nagłówkiem cache-control:no-store nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | cacheFlushed": {
    "message": "Pamięć podręczna została celowo wyczyszczona."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | cacheLimit": {
    "message": "Strona została usunięta z pamięci podręcznej, aby umożliwić przechowywanie w niej innej strony."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | containsPlugins": {
    "message": "Strony, które zawierają wtyczki, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentDiscarded": {
    "message": "Nieokreślony"
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentFileChooser": {
    "message": "Strony, które używają interfejsu FileChooser API, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentFileSystemAccess": {
    "message": "Strony, które używają interfejsu File System Access API, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentMediaDevicesDispatcherHost": {
    "message": "Strony, które używają dyspozytora nośnika danych, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentMediaPlay": {
    "message": "Odtwarzacz był włączony, gdy użytkownik zamknął stronę."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentMediaSession": {
    "message": "Strony, które używają interfejsu MediaSession API i określają stan odtwarzania, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentMediaSessionService": {
    "message": "Strony, które używają interfejsu MediaSession API i określają elementy działania, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentScreenReader": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona z powodu czytnika ekranu."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentSecurityHandler": {
    "message": "Strony, które używają SecurityHandler, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentSerial": {
    "message": "Strony, które używają interfejsu Serial API, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentWebAuthenticationAPI": {
    "message": "Strony, które używają interfejsu WebAuthetication API, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentWebBluetooth": {
    "message": "Strony, które używają interfejsu WebBluetooth API, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | contentWebUSB": {
    "message": "Strony, które używają interfejsu WebUSB API, nie kwalifikują się do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | cookieDisabled": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona, bo na stronie, która korzysta z elementu Cache-Control: no-store, wyłączone są pliki cookie."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | dedicatedWorkerOrWorklet": {
    "message": "Strony, które używają dedykowanej instancji roboczej lub workletu, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | documentLoaded": {
    "message": "Dokument nie został w pełni wczytany, zanim użytkownik go zamknął."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderAppBannerManager": {
    "message": "Podczas zamykania strony widoczny był baner aplikacji."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderChromePasswordManagerClientBindCredentialManager": {
    "message": "Podczas zamykania strony widoczny był menedżer haseł Chrome."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderDomDistillerSelfDeletingRequestDelegate": {
    "message": "Podczas zamykania strony aktywny był proces destylacji DOM."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderDomDistillerViewerSource": {
    "message": "Podczas zamykania strony widoczna była przeglądarka narzędzia DOM Distiller."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderExtensionMessaging": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona, bo rozszerzenia używają interfejsu Messaging API."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderExtensionMessagingForOpenPort": {
    "message": "Rozszerzenia od dłuższego czasu połączone powinny zakończyć połączenie przed uzyskaniem dostępu do pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderExtensionSentMessageToCachedFrame": {
    "message": "Rozszerzenia od dłuższego czasu połączone próbowały wysłać wiadomości do ramek w pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderExtensions": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona z powodu rozszerzeń."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderModalDialog": {
    "message": "Podczas zamykania strony wyświetliło się okno modalne takie jak ponowne przesłanie formularza lub okno hasła http."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderOfflinePage": {
    "message": "Podczas zamykania strony pokazywana była strona offline."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderOomInterventionTabHelper": {
    "message": "Podczas zamykania strony widoczny był pasek interwencji związanej z brakiem miejsca w pamięci."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderPermissionRequestManager": {
    "message": "Podczas zamykania strony pojawiły się prośby o uprawnienia."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderPopupBlockerTabHelper": {
    "message": "Podczas zamykania strony widoczne było blokowanie wyskakujących okienek."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderSafeBrowsingThreatDetails": {
    "message": "Podczas zamykania strony wyświetliły się szczegóły Bezpiecznego przeglądania."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | embedderSafeBrowsingTriggeredPopupBlocker": {
    "message": "Bezpieczne przeglądanie wykryło na tej stronie nadużycie i zablokowało wyskakujące okienko."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | enteredBackForwardCacheBeforeServiceWorkerHostAdded": {
    "message": "Skrypt service worker został aktywowany, gdy strona znajdowała się w pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | errorDocument": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona z powodu błędu w dokumencie."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | fencedFramesEmbedder": {
    "message": "Stron używających FencedFrames nie można przechowywać w pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | foregroundCacheLimit": {
    "message": "Strona została usunięta z pamięci podręcznej, aby umożliwić przechowywanie w niej innej strony."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | grantedMediaStreamAccess": {
    "message": "Strony, które mają przyznany dostęp do strumienia multimediów, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | haveInnerContents": {
    "message": "Strony zawierające niektóre rodzaje umieszczonych treści (np. pliki PDF) nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | idleManager": {
    "message": "Strony, które używają IdleManagera, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | indexedDBConnection": {
    "message": "Strony, które mają otwarte połączenie IndexedDB, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | indexedDBEvent": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona z powodu zdarzenia IndexedDB."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | ineligibleAPI": {
    "message": "Użyto nieodpowiednich interfejsów API."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | injectedJavascript": {
    "message": "Strony z interfejsem JavaScript wstrzykiwanym przez rozszerzenia nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | injectedStyleSheet": {
    "message": "Strony z interfejsem StyleSheet wstrzykiwanym przez rozszerzenia nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | internalError": {
    "message": "Błąd wewnętrzny."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | jsNetworkRequestReceivedCacheControlNoStoreResource": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona, ponieważ niektóre żądania sieciowe JavaScript otrzymały zasób z nagłówkiem Cache-Control: no-store."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | keepaliveRequest": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona z powodu żądania utrzymywania aktywności."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | keyboardLock": {
    "message": "Strony, które używają blokady klawiatury, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | loading": {
    "message": "Strona nie została w pełni wczytana, zanim użytkownik ją opuścił."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | mainResourceHasCacheControlNoCache": {
    "message": "Strony, których zasoby główne mają nagłówek cache-control:no-cache, nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | mainResourceHasCacheControlNoStore": {
    "message": "Strony, których zasoby główne mają nagłówek cache-control:no-store, nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | navigationCancelledWhileRestoring": {
    "message": "Nawigacja została anulowana przed przywróceniem strony z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | networkExceedsBufferLimit": {
    "message": "Strona została usunięta z pamięci podręcznej, ponieważ aktywne połączenie sieciowe otrzymało za dużo danych. Chrome ogranicza ilość danych, które strona może otrzymać, gdy jest przechowywana w pamięci podręcznej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | networkRequestDatapipeDrainedAsBytesConsumer": {
    "message": "Strony, które mają przesyłane żądanie fetch() lub XHR, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | networkRequestRedirected": {
    "message": "Strona została usunięta z pamięci podręcznej stanu strony internetowej, ponieważ aktywne żądanie sieciowe wiązało się z przekierowaniem."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | networkRequestTimeout": {
    "message": "Strona została usunięta z pamięci podręcznej, ponieważ połączenie sieciowe było zbyt długo otwarte. Chrome ogranicza ilość czasu, przez który strona może otrzymywać dane podczas przechowywania w pamięci podręcznej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | noResponseHead": {
    "message": "Strony, które nie mają prawidłowego nagłówka odpowiedzi, nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | notMainFrame": {
    "message": "Nawigacja odbywała się w ramce innej niż ramka główna."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | outstandingIndexedDBTransaction": {
    "message": "Strony z trwającymi transakcjami indeksowanej bazy danych nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | outstandingNetworkRequestDirectSocket": {
    "message": "Strony z przesyłanym żądaniem sieciowym nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | outstandingNetworkRequestFetch": {
    "message": "Strony z przesyłanym żądaniem sieciowym fetch() nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | outstandingNetworkRequestOthers": {
    "message": "Strony z przesyłanym żądaniem sieciowym nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | outstandingNetworkRequestXHR": {
    "message": "Strony z przesyłanym żądaniem sieciowym XHR nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | paymentManager": {
    "message": "Strony, które używają PaymentManagera, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | pictureInPicture": {
    "message": "Strony, które używają obrazu w obrazie, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | printing": {
    "message": "Strony, które wyświetlają interfejs drukowania, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | relatedActiveContentsExist": {
    "message": "Strona została otwarta za pomocą „window.open()” i inna karta się do niej odnosi lub strona otworzyła okno."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | rendererProcessCrashed": {
    "message": "W trakcie renderowania strony w pamięci podręcznej stanu strony internetowej wystąpił błąd."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | rendererProcessKilled": {
    "message": "Proces renderowania strony w pamięci podręcznej stanu strony internetowej został przerwany."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedAudioCapturePermission": {
    "message": "Strony, które poprosiły o przyznanie uprawnień do nagrywania dźwięku, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedBackForwardCacheBlockedSensors": {
    "message": "Strony, które poprosiły o przyznanie uprawnień dotyczących czujników, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedBackgroundWorkPermission": {
    "message": "Strony, które poprosiły o przyznanie uprawnień do pobierania lub synchronizacji w tle, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedMIDIPermission": {
    "message": "Strony, które poprosiły o przyznanie uprawnień dotyczących MIDI, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedNotificationsPermission": {
    "message": "Strony, które poprosiły o przyznanie uprawnień do powiadomień, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedStorageAccessGrant": {
    "message": "Strony, które poprosiły o przyznanie dostępu do pamięci, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | requestedVideoCapturePermission": {
    "message": "Strony, które poprosiły o przyznanie uprawnień do nagrywania filmów, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | schemeNotHTTPOrHTTPS": {
    "message": "W pamięci mogą być przechowywane tylko strony, których schemat URL to HTTP/HTTPS."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | serviceWorkerClaim": {
    "message": "Strona została wywołana przez skrypt service worker podczas korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | serviceWorkerPostMessage": {
    "message": "Skrypt service worker próbował wysłać właściwość MessageEvent stronie w pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | serviceWorkerUnregistration": {
    "message": "Skrypt service worker był niezarejestrowany, gdy strona znajdowała się w pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | serviceWorkerVersionActivation": {
    "message": "Strona została usunięta z pamięci podręcznej stanu strony internetowej z powodu aktywacji skryptu service worker."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | sessionRestored": {
    "message": "Przeglądarka Chrome uruchomiła się ponownie i wyczyściła wpisy w pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | sharedWorker": {
    "message": "Strony, które używają SharedWorker, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | sharedWorkerMessage": {
    "message": "Strona została usunięta z pamięci podręcznej, ponieważ otrzymała wiadomość od skryptu SharedWorker"
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | speechRecognizer": {
    "message": "Strony, które używają SpeechRecognizer, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | speechSynthesis": {
    "message": "Strony, które używają SpeechSynthesis, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | subframeIsNavigating": {
    "message": "Element iframe na stronie rozpoczął nawigację, która się nie zakończyła."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | subresourceHasCacheControlNoCache": {
    "message": "Strony, których zasoby podrzędne mają nagłówek cache-control:no-cache, nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | subresourceHasCacheControlNoStore": {
    "message": "Strony, których zasoby podrzędne mają nagłówek cache-control:no-store, nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | timeout": {
    "message": "Strona przekroczyła limit czasu w pamięci podręcznej stanu strony internetowej i wygasła."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | timeoutPuttingInCache": {
    "message": "Strona przekroczyła limit czasu w trakcie zapisywania w pamięci podręcznej stanu strony internetowej (prawdopodobnie z powodu długotrwałych wyrażeń pagehide)."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | unloadHandlerExistsInMainFrame": {
    "message": "Strona ma wyrażenie unload w ramce głównej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | unloadHandlerExistsInSubFrame": {
    "message": "Strona ma wyrażenie unload w ramce podrzędnej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | userAgentOverrideDiffers": {
    "message": "Przeglądarka zmieniła nagłówek zastępowania klienta użytkownika."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | wasGrantedMediaAccess": {
    "message": "Strony, które mają przyznany dostęp do nagrywania filmu lub dźwięku, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webDatabase": {
    "message": "Strony, które używają WebDatabase, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webHID": {
    "message": "Strony, które używają WebHID, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webLocks": {
    "message": "Strony, które używają WebLocks, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webNfc": {
    "message": "Strony, które używają WebNfc, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webOTPService": {
    "message": "Strony, które używają WebOTPService, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webRTC": {
    "message": "Strony z WebRTC nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webRTCUsedWithCCNS": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona, ponieważ użyto WebRTC."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webShare": {
    "message": "Strony, które używają WebShare, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webSocket": {
    "message": "Strony z WebSocket nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webSocketUsedWithCCNS": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona, ponieważ korzystasz z WebSocket."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webTransport": {
    "message": "Strony z WebTransport nie mogą korzystać z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webTransportUsedWithCCNS": {
    "message": "Pamięć podręczna stanu strony internetowej jest wyłączona, ponieważ korzystasz z WebTransport."
  },
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webXR": {
    "message": "Strony, które używają WebXR, nie kwalifikują się obecnie do korzystania z pamięci podręcznej stanu strony internetowej."
  },
  "node_modules/lighthouse-stack-packs/packs/amp.js | efficient-animated-content": {
    "message": "W przypadku treści animowanych stosuj atrybut [`amp-anim`](https://amp.dev/documentation/components/amp-anim/), by zminimalizować wykorzystanie procesora, gdy te treści znajdują się poza ekranem."
  },
  "node_modules/lighthouse-stack-packs/packs/amp.js | modern-image-formats": {
    "message": "Sugerujemy wyświetlanie wszystkich komponentów [`amp-img`](https://amp.dev/documentation/components/amp-img/?format=websites) w formatach WebP i podanie odpowiednich zasobów zastępczych dla innych przeglądarek. [Więcej informacji](https://amp.dev/documentation/components/amp-img/#example:-specifying-a-fallback-image)"
  },
  "node_modules/lighthouse-stack-packs/packs/amp.js | offscreen-images": {
    "message": "Upewnij się, że używasz elementu [`amp-img`](https://amp.dev/documentation/components/amp-img/?format=websites) dla obrazów, które są automatycznie ładowane w leniwy sposób. [Więcej informacji](https://amp.dev/documentation/guides-and-tutorials/develop/media_iframes_3p/?format=websites#images)"
  },
  "node_modules/lighthouse-stack-packs/packs/amp.js | render-blocking-resources": {
    "message": "Korzystaj z narzędzi takich jak [AMP Optimizer](https://github.com/ampproject/amp-toolbox/tree/master/packages/optimizer), aby [renderować układy AMP po stronie serwera](https://amp.dev/documentation/guides-and-tutorials/optimize-and-measure/server-side-rendering/)."
  },
  "node_modules/lighthouse-stack-packs/packs/amp.js | unminified-css": {
    "message": "Sprawdź w [dokumentacji AMP](https://amp.dev/documentation/guides-and-tutorials/develop/style_and_layout/style_pages/), czy wszystkie style są obsługiwane."
  },
  "node_modules/lighthouse-stack-packs/packs/amp.js | uses-responsive-images": {
    "message": "Element [`amp-img`](https://amp.dev/documentation/components/amp-img/?format=websites) ma atrybut [`srcset`](https://web.dev/use-srcset-to-automatically-choose-the-right-image/) wskazujący, których zasobów graficznych użyć w zależności od rozmiaru ekranu. [Więcej informacji](https://amp.dev/documentation/guides-and-tutorials/develop/style_and_layout/art_direction/)"
  },
  "node_modules/lighthouse-stack-packs/packs/angular.js | dom-size": {
    "message": "Jeśli renderowane są bardzo duże listy, proponujemy zastosowanie przewijania wirtualnego z pakietu CDK (Component Dev Kit). [Więcej informacji](https://web.dev/virtualize-lists-with-angular-cdk/)"
  },
  "node_modules/lighthouse-stack-packs/packs/angular.js | total-byte-weight": {
    "message": "Zastosuj [dzielenie kodu na poziomie przekierowań](https://web.dev/route-level-code-splitting-in-angular/), by zminimalizować wielkość pakietów JavaScript. Pomyśl też o wstępnym zapisywaniu zasobów w pamięci podręcznej za pomocą [skryptu service worker Angular](https://web.dev/precaching-with-the-angular-service-worker/)."
  },
  "node_modules/lighthouse-stack-packs/packs/angular.js | unminified-warning": {
    "message": "Jeśli używasz interfejsu wiersza poleceń Angular, upewnij się, że kompilacje są generowane w trybie produkcyjnym. [Więcej informacji](https://angular.io/guide/deployment#enable-runtime-production-mode)"
  },
  "node_modules/lighthouse-stack-packs/packs/angular.js | unused-javascript": {
    "message": "Jeśli używasz interfejsu wiersza poleceń Angular, dołącz do kompilacji produkcyjnej mapy źródeł w celu inspekcji pakietów. [Więcej informacji](https://angular.io/guide/deployment#inspect-the-bundles)"
  },
  "node_modules/lighthouse-stack-packs/packs/angular.js | uses-rel-preload": {
    "message": "Aby przyspieszyć nawigację, załaduj wcześniej przekierowania. [Więcej informacji](https://web.dev/route-preloading-in-angular/)"
  },
  "node_modules/lighthouse-stack-packs/packs/angular.js | uses-responsive-images": {
    "message": "Do zarządzania punktami przerwania obrazów proponujemy używać narzędzia `BreakpointObserver` z pakietu CDK (Component Dev Kit). [Więcej informacji](https://material.angular.io/cdk/layout/overview)"
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | efficient-animated-content": {
    "message": "Możesz przesłać plik `GIF` do usługi, która umożliwi umieszczanie go jako pliku wideo HTML5."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | modern-image-formats": {
    "message": "Zastanów się, czy nie skonfigurować w witrynie [formatów obrazu WebP za pomocą funkcji Konwertuj styl obrazu](https://www.drupal.org/docs/core-modules-and-themes/core-modules/image-module/working-with-images#styles)."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | offscreen-images": {
    "message": "Sugerujemy skonfigurowanie w systemie `Drupal` leniwego ładowania obrazów. Elementy formatujące pól obrazów obsługują opcje `lazy` i `eager`."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | prioritize-lcp-image": {
    "message": "Jeśli element LCP jest dynamicznie dodawany do strony, obraz należy zoptymalizować, aby poprawić wartość LCP. [Więcej informacji](https://www.smashingmagazine.com/2023/08/methods-improving-drupal-largest-contentful-paint-core-web-vital/)"
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | redirects": {
    "message": "Przekierowania wprowadzają dodatkowe opóźnienia przed załadowaniem strony. Jeśli zainstalowany jest moduł [Redirect](https://www.drupal.org/project/redirect), sprawdź, czy można usunąć niepotrzebne przekierowania. [Więcej informacji](https://developers.google.com/web/tools/lighthouse/audits/redirects)"
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | render-blocking-resources": {
    "message": "Sugerujemy używanie [modułu](https://www.drupal.org/project/critical_css) wbudowującego w stronę krytyczny kod CSS i JavaScript, a w przypadku mniej istotnego kodu CSS lub JavaScript stosowanie atrybutu opóźnienia."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | server-response-time": {
    "message": "Odciąż ruch za pomocą co najmniej 1 modułu buforowania w systemie `Drupal` takiego jak `Internal Page Cache`, `Internal Dynamic Page Cache` i `BigPipe`. Aby jeszcze bardziej skrócić czas odpowiedzi, połącz je z siecią CDN. Na serwerach hostujących należy używać PHP OPcache. Rozważ użycie pamięci podręcznej pamięci RAM (np. Redis lub Memcached), aby skrócić czas zapytań do bazy danych. Na koniec użyj wydajnych motywów, modułów i szybszych serwerów, aby skrócić czas reakcji serwera."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | total-byte-weight": {
    "message": "Sugerujemy używanie [stylów obrazów elastycznych](https://www.drupal.org/documentation/modules/responsive_image) w celu zmniejszenia wielkości plików graficznych wczytywanych na stronie. Jeśli używasz platformy `Views` do wyświetlania wielu elementów treści na stronie, rozważ zastosowanie podziału na strony, aby ograniczyć liczbę elementów wyświetlanych na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unminified-css": {
    "message": "Musisz mieć włączoną opcję „Aggregate CSS files” (Agreguj pliki CSS) na stronie „Administration » Configuration » Development” (Administracja » Konfiguracja » Programowanie)."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unminified-javascript": {
    "message": "Musisz mieć włączoną opcję „Aggregate JavaScript files” (Agreguj pliki JavaScript) na stronie „Administration » Configuration » Development” (Administracja » Konfiguracja » Programowanie)."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unused-css-rules": {
    "message": "Sugerujemy usunięcie nieużywanych reguł CSS i dołączenie bibliotek systemu `Drupal` tylko do tych stron lub komponentów na stronach, które ich potrzebują. Szczegóły znajdziesz w [dokumentacji systemu `Drupal`](https://www.drupal.org/docs/develop/theming-drupal/adding-assets-css-js-to-a-drupal-theme-via-librariesyml#define). Aby zidentyfikować dołączone biblioteki, które dodają nieistotny kod CSS, uruchom [pokrycie kodu](https://developer.chrome.com/docs/devtools/coverage) w Narzędziach deweloperskich w Chrome. Motyw/moduł, który dołącza te biblioteki, możesz zidentyfikować na podstawie adresu URL arkusza stylów, gdy witryna systemu `Drupal` ma wyłączoną agregację kodu CSS. Szukaj motywów/modułów, które mają na liście wiele arkuszy stylów z dużą ilością czerwonego koloru w pokryciu kodu. Motyw/moduł powinien dołączać bibliotekę arkuszy stylów tylko wtedy, gdy rzeczywiście jest ona używana na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unused-javascript": {
    "message": "Sugerujemy usunięcie nieużywanych zasobów JavaSciptu i dołączenie bibliotek systemu `Drupal` tylko do tych stron lub komponentów na stronach, które ich potrzebują. Szczegółowe informacje znajdziesz w [dokumentacji Drupala](https://www.drupal.org/docs/develop/theming-drupal/adding-assets-css-js-to-a-drupal-theme-via-librariesyml#define). Aby zidentyfikować dołączone biblioteki, które dodają nieistotny kod JavaScript, uruchom [pokrycie kodu](https://developer.chrome.com/docs/devtools/coverage) w Narzędziach deweloperskich w Chrome. Motyw/moduł, który dołącza te biblioteki, możesz zidentyfikować na podstawie adresu URL skryptu, gdy witryna systemu `Drupal` ma wyłączoną agregację kodu JavaScript. Szukaj motywów/modułów, które mają na liście wiele skryptów z dużą ilością czerwonego koloru w pokryciu kodu. Motyw/moduł powinien dołączać bibliotekę skryptów tylko wtedy, gdy rzeczywiście jest ona używana na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-long-cache-ttl": {
    "message": "Ustaw opcję „Browser and proxy cache maximum age” (Maksymalny wiek przeglądarki i pamięci podręcznej serwera proxy) na stronie „Administration » Configuration » Development” (Administracja » Konfiguracja » Programowanie). Przeczytaj artykuł o [pamięci podręcznej systemu `Drupal` i optymalizacji w celu zwiększenia wydajności](https://www.drupal.org/docs/8/api/cache-api/cache-api)."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-optimized-images": {
    "message": "Sugerujemy używanie [modułu](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A123&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=image&solrsort=iss_project_release_usage+desc&op=Search), który automatycznie optymalizuje i zmniejsza pliki graficzne przesłane do witryny, zachowując ich jakość. Używaj też natywnych [stylów obrazów elastycznych](https://www.drupal.org/documentation/modules/responsive_image) dostępnych w systemie `Drupal` dla wszystkich obrazów renderowanych w witrynie."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-rel-preconnect": {
    "message": "Wskazówki „`Preconnect`” lub „`dns-prefetch`” można dodać, instalując i konfigurując [moduł](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=Preconnect&solrsort=score+desc&op=Search) obsługujący wskazówki zasobów klienta użytkownika."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-responsive-images": {
    "message": "Używaj dostępnych w systemie `Drupal` natywnych [stylów obrazów elastycznych](https://www.drupal.org/documentation/modules/responsive_image). Wykorzystaj je do renderowania pól obrazów za pomocą trybów widoku, widoków lub obrazów przesłanych w edytorze WYSIWYG."
  },
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-text-compression": {
    "message": "Zasoby tekstowe powinny być kompresowane (gzip, deflate lub brotli), aby zminimalizować ilość danych przesyłanych w sieci. Sugerujemy użycie sieci CDN, która obsługuje tę funkcję na poziomie natywnym, lub skonfiguruj wykonywanie tej operacji przez serwer WWW. [Więcej informacji](https://developers.google.com/web/tools/lighthouse/audits/text-compression)"
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | font-display": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Optimize Fonts`, aby automatycznie wykorzystać funkcję CSS „`font-display`” do zapewnienia widoczności tekstu dla użytkownika podczas ładowania czcionek internetowych."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | modern-image-formats": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Next-Gen Formats`, aby konwertować obrazy do formatu WebP."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | offscreen-images": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Lazy Load Images`, aby odłożyć ładowanie obrazów niewyświetlanych na ekranie do momentu, aż będą potrzebne."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | render-blocking-resources": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Script Delay`, aby opóźnić ładowanie niekrytycznych plików JS."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | server-response-time": {
    "message": "Skorzystaj z [Ezoic Cloud Caching](https://pubdash.ezoic.com/leap/caching), aby buforować swoje treści w naszej ogólnoświatowej sieci i skrócić czas reakcji serwera."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | unminified-css": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Minify CSS`, aby automatycznie zmniejszyć plik CSS i tym samym ładunki sieciowe."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | unminified-javascript": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Minify Javascript`, aby automatycznie zmniejszyć plik JS i tym samym ładunki sieciowe."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | unused-css-rules": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Remove Unused CSS`, aby pomóc rozwiązać ten problem. Pozwoli to rozpoznać klasy CSS, które są rzeczywiście używane na poszczególnych stronach Twojej witryny, i usunąć pozostałe klasy, zachowując niewielki rozmiar pliku."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-long-cache-ttl": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Efficient Static Cache Policy`, aby ustawić zalecane wartości w nagłówku buforowania zasobów statycznych."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-optimized-images": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Next-Gen Formats`, aby konwertować obrazy do formatu WebP."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-rel-preconnect": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Pre-Connect Origins`, aby automatycznie dodać wskazówki zasobów „`preconnect`” w celu wcześniejszego nawiązywania połączeń z ważnymi źródłami w innych domenach."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-rel-preload": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienia `Preload Fonts` oraz `Preload Background Images`, aby dodać linki `preload` w celu szybszego pobierania zasobów, które są obecnie żądane na dalszym etapie ładowania strony."
  },
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-responsive-images": {
    "message": "Użyj zestawu narzędzi [Ezoic Leap](https://pubdash.ezoic.com/leap) i włącz ustawienie `Resize Images`, aby dostosować rozmiar obrazów odpowiednio do danego urządzenia, zmniejszając ładunki sieciowe."
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | modern-image-formats": {
    "message": "Aby automatycznie zoptymalizować format obrazu, użyj komponentu `gatsby-plugin-image` zamiast `<img>`. [Więcej informacji](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | offscreen-images": {
    "message": "Aby automatycznie była używana funkcja leniwego ładowania obrazów, użyj komponentu `gatsby-plugin-image` zamiast `<img>`. [Więcej informacji](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | prioritize-lcp-image": {
    "message": "Użyj komponentu `gatsby-plugin-image` i ustaw właściwość `loading` na `eager`. [Więcej informacji](https://www.gatsbyjs.com/docs/reference/built-in-components/gatsby-plugin-image#shared-props)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | render-blocking-resources": {
    "message": "Aby opóźnić wczytywanie niekrytycznych skryptów spoza witryny, użyj komponentu `Gatsby Script API`. [Więcej informacji](https://www.gatsbyjs.com/docs/reference/built-in-components/gatsby-script/)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | unused-css-rules": {
    "message": "Aby usunąć nieużywane reguły z arkuszy stylów, użyj wtyczki `PurgeCSS` `Gatsby`. [Więcej informacji](https://purgecss.com/plugins/gatsby.html)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | unused-javascript": {
    "message": "Użyj narzędzia `Webpack Bundle Analyzer`, aby wykryć nieużywany kod JavaScript. [Więcej informacji](https://www.gatsbyjs.com/plugins/gatsby-plugin-webpack-bundle-analyser-v2/)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | uses-long-cache-ttl": {
    "message": "Skonfiguruj buforowanie zasobów niezmiennych. [Więcej informacji](https://www.gatsbyjs.com/docs/how-to/previews-deploys-hosting/caching/)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | uses-optimized-images": {
    "message": "Aby dostosować jakość obrazów, użyj komponentu `gatsby-plugin-image` zamiast `<img>`. [Więcej informacji](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)"
  },
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | uses-responsive-images": {
    "message": "Aby ustawić odpowiednią wartość `sizes`, użyj komponentu `gatsby-plugin-image`. [Więcej informacji](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)"
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | efficient-animated-content": {
    "message": "Możesz przesłać plik GIF do usługi, która umożliwi umieszczanie go jako pliku wideo HTML5."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | modern-image-formats": {
    "message": "Możesz skorzystać z [wtyczki](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=webp) lub usługi, która będzie automatycznie konwertować przesłane obrazy do optymalnych formatów."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | offscreen-images": {
    "message": "Zainstaluj [wtyczkę Joomli do leniwego ładowania](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=lazy%20loading), która umożliwia odłożenie ładowania obrazów niewyświetlanych na ekranie, albo wybierz szablon, który ma tę funkcję. Począwszy od wersji Joomla 4.0 wszystkie nowe obrazy będą [automatycznie](https://github.com/joomla/joomla-cms/pull/30748) mieć atrybut `loading` ustawiany przez funkcje podstawowe."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | render-blocking-resources": {
    "message": "Jest wiele wtyczek Joomli, które mogą pomóc Ci [umieścić w tekście najważniejsze zasoby](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=performance) lub [opóźnić wczytywanie tych, które są mniej ważne](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=performance). Pamiętaj, że optymalizacje dostarczane przez te wtyczki mogą uszkodzić funkcje Twoich szablonów lub innych wtyczek, więc konieczne jest przeprowadzenie dokładnych testów."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | server-response-time": {
    "message": "Szablony, rozszerzenia i specyfikacje serwera są nie bez znaczenia dla jego czasu reakcji. Być może warto znaleźć lepiej zoptymalizowany szablon, starannie wybrać rozszerzenie optymalizujące lub przejść na nowszą wersję serwera."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | total-byte-weight": {
    "message": "Korzystne może być wyświetlanie fragmentów w poszczególnych kategoriach artykułów (np. przy użyciu linku Przeczytaj więcej), zmniejszenie liczby artykułów wyświetlanych na danej stronie, podział długich postów na kilka stron lub użycie wtyczki umożliwiającej leniwe ładowanie komentarzy."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | unminified-css": {
    "message": "Kilka [rozszerzeń Joomli](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=performance) może przyspieszyć działanie strony dzięki konkatenacji, minifikacji i kompresji stylów CSS. Istnieją też szablony z takimi funkcjami."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | unminified-javascript": {
    "message": "Kilka [rozszerzeń Joomli](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=performance) może przyspieszyć działanie strony dzięki konkatenacji, minifikacji i kompresji skryptów. Istnieją też szablony z takimi funkcjami."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | unused-css-rules": {
    "message": "Dobrym rozwiązaniem może być ograniczenie liczby [rozszerzeń Joomli](https://extensions.joomla.org/) wczytujących na stronie nieużywany kod CSS albo zmiana tych wtyczek na inne. Aby zidentyfikować rozszerzenia, które dodają nieistotny kod CSS, uruchom [zasięg kodu](https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage) w Chrome DevTools. Możesz zidentyfikować taki motyw/wtyczkę w adresie URL arkusza stylów. Szukaj wtyczek, które mają na liście wiele arkuszy stylów z dużą ilością czerwonego koloru w zasięgu kodu. Wtyczka powinna umieszczać arkusz stylów w kolejce tylko wtedy, gdy rzeczywiście jest on używany na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | unused-javascript": {
    "message": "Dobrym rozwiązaniem może być ograniczenie liczby [rozszerzeń Joomli](https://extensions.joomla.org/) wczytujących na stronie nieużywany kod JavaScript albo zmiana tych wtyczek na inne. Aby zidentyfikować wtyczki, które dodają nieistotny kod JS, uruchom [zasięg kodu](https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage) w Chrome DevTools. Możesz zidentyfikować takie rozszerzenie na podstawie adresu URL skryptu. Szukaj rozszerzeń, które mają na liście wiele skryptów z dużą ilością czerwonego koloru w zasięgu kodu. Rozszerzenie powinno umieszczać skrypt w kolejce tylko wtedy, gdy rzeczywiście jest on używany na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | uses-long-cache-ttl": {
    "message": "Dowiedz się więcej o [pamięci podręcznej przeglądarki w Joomli](https://docs.joomla.org/Cache)."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | uses-optimized-images": {
    "message": "Pomocna może być [wtyczka do optymalizacji obrazów](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=performance), która kompresuje obrazy, zachowując ich jakość."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | uses-responsive-images": {
    "message": "Sugerujemy wykorzystanie [wtyczki obsługującej obrazy elastyczne](https://extensions.joomla.org/instant-search/?jed_live%5Bquery%5D=responsive%20images)."
  },
  "node_modules/lighthouse-stack-packs/packs/joomla.js | uses-text-compression": {
    "message": "Możesz włączyć kompresję tekstu za pomocą opcji Gzip Page Compression w konfiguracji Joomli (System > Global configuration > Server)."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | critical-request-chains": {
    "message": "Jeśli nie łączysz zasobów JavaScript w pakiet, proponujemy użycie metody [baler](https://github.com/magento/baler)."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | disable-bundling": {
    "message": "Proponujemy wyłączenie wbudowanych w Magento funkcji [tworzenia pakietów i minifikacji JavaScript](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/themes/js-bundling.html), a użycie zamiast nich metody [baler](https://github.com/magento/baler/)."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | font-display": {
    "message": "[Definiując niestandardowe czcionki](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/css-topics/using-fonts.html), ustaw `@font-display`."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | modern-image-formats": {
    "message": "Proponujemy poszukać w [Magento Marketplace](https://marketplace.magento.com/catalogsearch/result/?q=webp) rozszerzeń innych firm umożliwiających wykorzystanie nowych formatów obrazów."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | offscreen-images": {
    "message": "Sugerujemy zmodyfikowanie szablonów produktu i katalogu w celu wykorzystania funkcji platformy internetowej [leniwego ładowania](https://web.dev/native-lazy-loading)."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | server-response-time": {
    "message": "Skorzystaj z [integracji Varnish](https://devdocs.magento.com/guides/v2.3/config-guide/varnish/config-varnish.html) z Magento."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | unminified-css": {
    "message": "Włącz opcję „Minify CSS Files” (Minifikuj pliki CSS) w ustawieniach dewelopera swojego sklepu. [Więcej informacji](https://devdocs.magento.com/guides/v2.3/performance-best-practices/configuration.html?itm_source=devdocs&itm_medium=search_page&itm_campaign=federated_search&itm_term=minify%20css%20files)"
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | unminified-javascript": {
    "message": "Do minifikacji wszystkich plików JavaScript z wdrożenia treści statycznych używaj parsera [Terser](https://www.npmjs.com/package/terser) i wyłącz wbudowaną funkcję minifikacji."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | unused-javascript": {
    "message": "Wyłącz wbudowaną w Magento funkcję [tworzenia pakietów JavaScript](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/themes/js-bundling.html)."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | uses-optimized-images": {
    "message": "Proponujemy poszukać w [Magento Marketplace](https://marketplace.magento.com/catalogsearch/result/?q=optimize%20image) rozszerzeń innych firm umożliwiających optymalizację obrazów."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | uses-rel-preconnect": {
    "message": "Wskazówki „preconnect” lub „dns-prefetch” można dodać, [modyfikując układ motywu](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)."
  },
  "node_modules/lighthouse-stack-packs/packs/magento.js | uses-rel-preload": {
    "message": "Tagi `<link rel=preload>` można dodać, [modyfikując układ motywu](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)."
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | modern-image-formats": {
    "message": "Aby automatycznie zoptymalizować format obrazu, użyj komponentu `next/image` zamiast `<img>`. [Więcej informacji](https://nextjs.org/docs/app/getting-started/images)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | offscreen-images": {
    "message": "Aby automatycznie była używana funkcja leniwego ładowania obrazów, użyj komponentu `next/image` zamiast `<img>`. [Więcej informacji](https://nextjs.org/docs/app/getting-started/images)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | prioritize-lcp-image": {
    "message": "Użyj komponentu `next/image` i ustaw wartość Prawda dla elementu „priority”, aby wstępnie wczytać obraz LCP. [Więcej informacji](https://nextjs.org/docs/api-reference/next/image#priority)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | render-blocking-resources": {
    "message": "Użyj komponentu `next/script`, aby opóźnić wczytywanie niekrytycznych skryptów spoza witryny. [Więcej informacji](https://nextjs.org/docs/app/guides/scripts)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | unsized-images": {
    "message": "Aby zawsze był odpowiednio dostosowywany rozmiar obrazów, użyj komponentu `next/image`. [Więcej informacji](https://nextjs.org/docs/api-reference/next/image#width)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | unused-css-rules": {
    "message": "Możesz skonfigurować wtyczkę `PurgeCSS` w konfiguracji `Next.js`, aby usunąć nieużywane reguły z arkuszy stylów. [Więcej informacji](https://purgecss.com/guides/next.html)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | unused-javascript": {
    "message": "Użyj narzędzia `Webpack Bundle Analyzer`, aby wykryć nieużywany kod JavaScript. [Więcej informacji](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | user-timings": {
    "message": "Możesz użyć narzędzia `Next.js Analytics`, żeby zmierzyć rzeczywistą szybkość aplikacji. [Więcej informacji](https://nextjs.org/docs/pages/guides/analytics)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-long-cache-ttl": {
    "message": "Skonfiguruj buforowanie zasobów niezmiennych i stron `Server-side Rendered` (SSR). [Więcej informacji](https://nextjs.org/docs/13/pages/building-your-application/deploying/production-checklist#caching)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-optimized-images": {
    "message": "Aby dostosować jakość obrazów, użyj komponentu `next/image` zamiast `<img>`. [Więcej informacji](https://nextjs.org/docs/app/getting-started/images)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-responsive-images": {
    "message": "Użyj komponentu `next/image`, aby ustawić odpowiednią wartość `sizes`. [Więcej informacji](https://nextjs.org/docs/api-reference/next/image#sizes)"
  },
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-text-compression": {
    "message": "Włącz na swoim serwerze Next.js kompresję. [Więcej informacji](https://nextjs.org/docs/api-reference/next.config.js/compression)"
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | dom-size": {
    "message": "Aby włączyć funkcję [`HTML Lazy Load`](https://support.nitropack.io/hc/en-us/articles/17144942904337), skontaktuj się z menedżerem konta. Po jej skonfigurowaniu renderowanie stron otrzyma odpowiedni priorytet i zostanie zoptymalizowane pod kątem wydajności."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | font-display": {
    "message": "Aby ustawić odpowiednią wartość reguły CSS font-display, użyj funkcji [`Override Font Rendering Behavior`](https://support.nitropack.io/hc/en-us/articles/16547358865041) w NitroPack."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | modern-image-formats": {
    "message": "Aby automatycznie przekonwertować obrazy na WebP, użyj funkcji [`Image Optimization`](https://support.nitropack.io/hc/en-us/articles/16547237162513)."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | offscreen-images": {
    "message": "Aby opóźnić wyświetlanie obrazów poza ekranem, włącz funkcję [`Automatic Image Lazy Loading`](https://support.nitropack.io/hc/en-us/articles/12457493524369-NitroPack-Lazy-Loading-Feature-for-Images)."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | render-blocking-resources": {
    "message": "Aby przyspieszyć pierwsze wczytywanie, włącz funkcję [`Remove render-blocking resources`](https://support.nitropack.io/hc/en-us/articles/13820893500049-How-to-Deal-with-Render-Blocking-Resources-in-NitroPack) w NitroPack."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | unminified-css": {
    "message": "Aby zmniejszyć rozmiar plików CSS, HTML i JavaScript i przyspieszyć ich wczytywanie, włącz w ustawieniach zapisywania w pamięci podręcznej funkcję [`Minify resources`](https://support.nitropack.io/hc/en-us/articles/360061059394-Minify-Resources)."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | unminified-javascript": {
    "message": "Aby zmniejszyć rozmiar plików JS, HTML i CSS i przyspieszyć ich wczytywanie, włącz w ustawieniach zapisywania w pamięci podręcznej funkcję [`Minify resources`](https://support.nitropack.io/hc/en-us/articles/360061059394-Minify-Resources)."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | unused-css-rules": {
    "message": "Aby usunąć reguły CSS, które nie mają zastosowania do tej strony, włącz funkcję [`Reduce Unused CSS`](https://support.nitropack.io/hc/en-us/articles/360020418457-Reduce-Unused-CSS)."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | unused-javascript": {
    "message": "Aby opóźniać wczytywanie skryptów do momentu, gdy będą potrzebne, skonfiguruj funkcję [`Delayed Scripts`](https://support.nitropack.io/hc/en-us/articles/1500002600942-Delayed-Scripts) w NitroPack."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-long-cache-ttl": {
    "message": "Przejdź do funkcji [`Improve Server Response Time`](https://support.nitropack.io/hc/en-us/articles/1500002321821-Improve-Server-Response-Time) w menu `Caching` i dostosuj czas wygaśnięcia pamięci podręcznej strony, aby skrócić czas wczytywania i poprawić wygodę użytkowników."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-optimized-images": {
    "message": "Włącza funkcję [`Image Optimization`](https://support.nitropack.io/hc/en-us/articles/14177271695121-How-to-serve-images-in-next-gen-formats-using-NitroPack), aby automatycznie kompresować, optymalizować i konwertować obrazy do formatu WebP."
  },
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-responsive-images": {
    "message": "Aby z wyprzedzeniem optymalizować obrazy i dostosowywać je do wymiarów kontenerów, w których są wyświetlane na wszystkich urządzeniach, włącz funkcję [`Adaptive Image Sizing`](https://support.nitropack.io/hc/en-us/articles/10123833029905-How-to-Enable-Adaptive-Image-Sizing-For-Your-Site)."
  },
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": {
    "message": "Użyj komponentu `nuxt/image` i ustaw `format=\"webp\"`. [Więcej informacji](https://image.nuxt.com/usage/nuxt-img#format)"
  },
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | offscreen-images": {
    "message": "Użyj komponentu `nuxt/image` i ustaw `loading=\"lazy\"` dla obrazów poza ekranem. [Więcej informacji](https://image.nuxt.com/usage/nuxt-img#loading)"
  },
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | prioritize-lcp-image": {
    "message": "Użyj komponentu `nuxt/image` i określ wartość `preload` dla obrazu LCP. [Więcej informacji](https://image.nuxt.com/usage/nuxt-img#preload)"
  },
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | unsized-images": {
    "message": "Użyj komponentu `nuxt/image` i jawnie określ `width` oraz `height`. [Więcej informacji](https://image.nuxt.com/usage/nuxt-img#width-height)"
  },
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-optimized-images": {
    "message": "Użyj komponentu `nuxt/image` i ustaw odpowiednią wartość `quality`. [Więcej informacji](https://image.nuxt.com/usage/nuxt-img#quality)"
  },
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-responsive-images": {
    "message": "Użyj komponentu `nuxt/image` i ustaw odpowiednią wartość `sizes`. [Więcej informacji](https://image.nuxt.com/usage/nuxt-img#sizes)"
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | efficient-animated-content": {
    "message": "[Zastąp animowane GIF-y filmami](https://web.dev/replace-gifs-with-videos/), aby strony ładowały się szybciej, i rozważ użycie nowoczesnych formatów plików, takich jak [WebM](https://web.dev/replace-gifs-with-videos/#create-webm-videos) lub [AV1](https://developers.google.com/web/updates/2018/09/chrome-70-media-updates#av1-decoder), aby poprawić kompresję o ponad 30% w stosunku do kodeka wideo VP9."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | modern-image-formats": {
    "message": "Możesz skorzystać z [wtyczki](https://octobercms.com/plugins?search=image) lub usługi, która będzie automatycznie konwertować przesłane obrazy do optymalnych formatów. [Pliki graficzne z kompresją bezstratną WebP](https://developers.google.com/speed/webp) są o 26% mniejsze od plików PNG i o 25–34% mniejsze od porównywalnych plików JPEG przy równoważnym indeksie jakości SSIM. Inny nowoczesny format obrazu, którego użycie warto rozważyć, to [AVIF](https://jakearchibald.com/2020/avif-has-landed/)."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | offscreen-images": {
    "message": "Możesz zainstalować [wtyczkę do leniwego ładowania obrazów](https://octobercms.com/plugins?search=lazy), która umożliwia odłożenie ładowania obrazów niewyświetlanych na ekranie, albo wybrać motyw, który ma tę funkcję. Warto też skorzystać z [wtyczki AMP](https://octobercms.com/plugins?search=Accelerated+Mobile+Pages)."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | render-blocking-resources": {
    "message": "Istnieje wiele wtyczek, które pomagają [umieścić w tekście najważniejsze zasoby](https://octobercms.com/plugins?search=css). Te wtyczki mogą zakłócać działanie innych wtyczek, więc należy przeprowadzić dokładne testy."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | server-response-time": {
    "message": "Motywy, wtyczki i specyfikacje serwera są nie bez znaczenia dla czasu odpowiedzi serwera. Być może warto znaleźć lepiej zoptymalizowany motyw, starannie wybrać wtyczkę optymalizującą lub przejść na nowszą wersję serwera. October CMS pozwala programistom wykorzystać [`Queues`](https://octobercms.com/docs/services/queues) do odkładania na później czasochłonnych zadań, takich jak wysyłanie e-maili. Bardzo przyspiesza to obsługę żądań sieciowych."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | total-byte-weight": {
    "message": "Korzystne może być wyświetlanie fragmentów na liście postów (np. przy użyciu przycisku `show more`), zmniejszenie liczby postów wyświetlanych na danej stronie, podzielenie długich postów na kilka stron lub użycie wtyczki umożliwiającej leniwe ładowanie komentarzy."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | unminified-css": {
    "message": "Jest wiele [wtyczek](https://octobercms.com/plugins?search=css), które mogą przyspieszyć działanie witryny dzięki konkatenacji, minifikacji i kompresji stylów. Przeprowadzenie minifikacji już podczas kompilacji może przyspieszyć tworzenie witryny."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | unminified-javascript": {
    "message": "Jest wiele [wtyczek](https://octobercms.com/plugins?search=javascript), które mogą przyspieszyć działanie witryny dzięki konkatenacji, minifikacji i kompresji skryptów. Przeprowadzenie minifikacji już podczas kompilacji może przyspieszyć tworzenie witryny."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | unused-css-rules": {
    "message": "Możesz sprawdzić [wtyczki](https://octobercms.com/plugins), które wczytują w witrynie nieużywany kod CSS. Aby zidentyfikować wtyczki, które dodają niepotrzebny kod CSS, uruchom [pokrycie kodu](https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage) w Narzędziach deweloperskich Chrome. Zidentyfikujesz taki motyw/wtyczkę na podstawie adresu URL arkusza stylów. Szukaj wtyczek, które mają wiele arkuszy stylów z dużą ilością czerwonego koloru w pokryciu kodu. Wtyczka powinna dodawać arkusz stylów tylko wtedy, gdy rzeczywiście jest on używany na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | unused-javascript": {
    "message": "Możesz sprawdzić [wtyczki](https://octobercms.com/plugins?search=javascript), które wczytują na stronie nieużywany kod JavaScript. Aby zidentyfikować wtyczki, które dodają niepotrzebny kod JavaScript, uruchom [pokrycie kodu](https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage) w Narzędziach deweloperskich Chrome. Zidentyfikujesz taki motyw/wtyczkę na podstawie adresu URL skryptu. Szukaj wtyczek, które mają wiele skryptów z dużą ilością czerwonego koloru w pokryciu kodu. Wtyczka powinna dodawać skrypt tylko wtedy, gdy rzeczywiście jest on używany na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | uses-long-cache-ttl": {
    "message": "Przeczytaj o [unikaniu zbędnych żądań sieciowych dzięki pamięci podręcznej HTTP](https://web.dev/http-cache/#caching-checklist). Jest wiele [wtyczek](https://octobercms.com/plugins?search=Caching), które pozwalają przyspieszyć zapisywanie w pamięci podręcznej."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | uses-optimized-images": {
    "message": "Pomocna może być [wtyczka do optymalizacji obrazów](https://octobercms.com/plugins?search=image), która kompresuje obrazy, zachowując ich jakość."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | uses-responsive-images": {
    "message": "Przesyłaj obrazy bezpośrednio w menedżerze multimediów, aby mieć pewność, że wymagane rozmiary obrazów są dostępne. Możesz użyć [filtra zmieniającego rozmiar](https://octobercms.com/docs/markup/filter-resize) lub [wtyczki do zmieniania rozmiaru obrazów](https://octobercms.com/plugins?search=image), aby zapewnić używanie optymalnych rozmiarów obrazów."
  },
  "node_modules/lighthouse-stack-packs/packs/octobercms.js | uses-text-compression": {
    "message": "Włącz kompresję tekstu w konfiguracji serwera WWW."
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | dom-size": {
    "message": "Jeśli renderujesz na stronie wiele powtarzających się elementów, proponujemy wykorzystanie biblioteki „okienkowej”, takiej jak `react-window`, aby zminimalizować liczbę tworzonych węzłów DOM. [Więcej informacji](https://web.dev/virtualize-long-lists-react-window/) Aby przyspieszyć działanie, zredukuj też liczbę ponownych renderowań za pomocą metod [`shouldComponentUpdate`](https://reactjs.org/docs/optimizing-performance.html#shouldcomponentupdate-in-action), [`PureComponent`](https://reactjs.org/docs/react-api.html#reactpurecomponent) lub [`React.memo`](https://reactjs.org/docs/react-api.html#reactmemo). Jeśli używasz hooka `Effect`, [pomijaj efekty](https://reactjs.org/docs/hooks-effect.html#tip-optimizing-performance-by-skipping-effects) tylko do momentu zmiany określonych zależności."
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | redirects": {
    "message": "Jeśli używasz komponentów React Router, zminimalizuj wykorzystanie komponentu `<Redirect>` do [przekierowania nawigacji](https://reacttraining.com/react-router/web/api/Redirect)."
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | server-response-time": {
    "message": "Jeśli renderujesz komponenty React po stronie serwera, proponujemy używanie metod `renderToPipeableStream()` lub `renderToStaticNodeStream()`, by umożliwić klientowi odbieranie i rozwijanie poszczególnych części kodu zamiast całego naraz. [Więcej informacji](https://reactjs.org/docs/react-dom-server.html#renderToPipeableStream)"
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | unminified-css": {
    "message": "Jeśli Twój system kompilacji automatycznie minifikuje pliki CSS, upewnij się, że wdrażasz kompilację produkcyjną aplikacji. Możesz to sprawdzić za pomocą rozszerzenia Narzędzia dla programistów React. [Więcej informacji](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build)"
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | unminified-javascript": {
    "message": "Jeśli Twój system kompilacji automatycznie minifikuje pliki JS, upewnij się, że wdrażasz kompilację produkcyjną aplikacji. Możesz to sprawdzić za pomocą rozszerzenia Narzędzia dla programistów React. [Więcej informacji](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build)"
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | unused-javascript": {
    "message": "Jeśli nie renderujesz po stronie serwera, [podziel pakiety JavaScript](https://web.dev/code-splitting-suspense/), używając funkcji `React.lazy()`. W przeciwnym razie podziel kod za pomocą biblioteki innej firmy, takiej jak [loadable-components](https://loadable-components.com/)."
  },
  "node_modules/lighthouse-stack-packs/packs/react.js | user-timings": {
    "message": "Do pomiaru wydajności renderowania komponentów używaj programu profilującego z narzędzi dla programistów React, który wykorzystuje interfejs Profiler API. [Więcej informacji](https://reactjs.org/blog/2018/09/10/introducing-the-react-profiler.html)"
  },
  "node_modules/lighthouse-stack-packs/packs/wix.js | efficient-animated-content": {
    "message": "Umieść filmy w elemencie `VideoBoxes`, dostosuj je za pomocą elementu `Video Masks` lub dodaj `Transparent Videos`. [Więcej informacji](https://support.wix.com/en/article/wix-video-about-wix-video)"
  },
  "node_modules/lighthouse-stack-packs/packs/wix.js | modern-image-formats": {
    "message": "Prześlij obrazy, używając usługi `Wix Media Manager`, aby mieć pewność, że będą one automatycznie wyświetlane w formacie WebP. Poznaj [inne sposoby optymalizacji](https://support.wix.com/en/article/site-performance-optimizing-your-media) multimediów w witrynie."
  },
  "node_modules/lighthouse-stack-packs/packs/wix.js | render-blocking-resources": {
    "message": "[Dodając kod spoza witryny](https://support.wix.com/en/article/site-performance-using-third-party-code-on-your-site) na karcie `Custom Code` w panelu witryny, upewnij się, że jest on odroczony lub ładowany na końcu. Gdy tylko jest to możliwe, umieszczaj narzędzia marketingowe w witrynie, korzystając z [integracji](https://support.wix.com/en/article/about-marketing-integrations) Wix. "
  },
  "node_modules/lighthouse-stack-packs/packs/wix.js | server-response-time": {
    "message": "Wix korzysta z sieci CDN i buforowania, aby jak najszybciej wyświetlać odpowiedzi większości użytkownikom. Zastanów się nad [ręcznym włączeniem buforowania](https://support.wix.com/en/article/site-performance-caching-pages-to-optimize-loading-speed) w witrynie – zwłaszcza jeśli używasz `Velo`."
  },
  "node_modules/lighthouse-stack-packs/packs/wix.js | unused-javascript": {
    "message": "Sprawdź kod spoza witryny dodany na karcie `Custom Code` w panelu witryny i zachowaj tylko te usługi, które są niezbędne. [Więcej informacji](https://support.wix.com/en/article/site-performance-removing-unused-javascript)"
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | efficient-animated-content": {
    "message": "Możesz przesłać plik GIF do usługi, która umożliwi umieszczanie go jako pliku wideo HTML5."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | modern-image-formats": {
    "message": "Rozważ używanie wtyczki [Performance Lab](https://wordpress.org/plugins/performance-lab/) do automatycznego konwertowania przesyłanych plików JPEG na format WebP, jeśli jest on obsługiwany."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | offscreen-images": {
    "message": "Zainstaluj [wtyczkę WordPressa do leniwego ładowania](https://wordpress.org/plugins/search/lazy+load/), która umożliwia odłożenie ładowania obrazów niewyświetlanych na ekranie, albo wybierz motyw, który ma tę funkcję. Warto też skorzystać z [wtyczki AMP](https://wordpress.org/plugins/amp/)."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | render-blocking-resources": {
    "message": "Jest wiele wtyczek WordPressa, które mogą pomóc Ci [umieścić w tekście najważniejsze zasoby](https://wordpress.org/plugins/search/critical+css/) lub [opóźnić wczytywanie mniej ważnych zasobów](https://wordpress.org/plugins/search/defer+css+javascript/). Pamiętaj, że optymalizacje dostarczane przez te wtyczki mogą uszkodzić funkcje Twojego motywu lub innych wtyczek i konieczne może być wprowadzenie zmian w kodzie."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | server-response-time": {
    "message": "Wybierz lekki motyw (najlepiej motyw blokowy) i wdróż buforowanie pełnych stron lub rozwiązanie do witryn statycznych. Wyłącz niepotrzebne wtyczki, aby zminimalizować obciążenie serwera. Sugerujemy przejście z hostingu na usługę zarządzaną lub dedykowaną."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | total-byte-weight": {
    "message": "Korzystne może być wyświetlanie fragmentów na liście postów (np. przy użyciu tagu more), zmniejszenie liczby postów wyświetlanych na danej stronie, podział długich postów na kilka stron lub użycie wtyczki umożliwiającej opóźnione wczytywanie komentarzy."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | unminified-css": {
    "message": "Kilka [wtyczek WordPressa](https://wordpress.org/plugins/search/minify+css/) może przyśpieszyć działanie strony dzięki konkatenacji, minifikacji i kompresji stylów. Jeśli masz taką możliwość, przeprowadż minifikację, zanim opublikujesz skrypty."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | unminified-javascript": {
    "message": "Kilka [wtyczek WordPressa](https://wordpress.org/plugins/search/minify+javascript/) może przyśpieszyć działanie strony dzięki konkatenacji, minifikacji i kompresji skryptów. Jeśli masz taką możliwość, przeprowadź minifikację, zanim opublikujesz skrypty."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | unused-css-rules": {
    "message": "Dobrym rozwiązaniem może być ograniczenie liczby [wtyczek WordPressa](https://wordpress.org/plugins/) wczytujących na stronie nieużywany kod CSS albo zmiana tych wtyczek na inne. Aby zidentyfikować wtyczki, które dodają nieistotny kod CSS, uruchom [zasięg kodu](https://developer.chrome.com/docs/devtools/coverage/) w Chrome DevTools. Możesz zidentyfikować taki motyw/wtyczkę w adresie URL arkusza stylów. Szukaj wtyczek, które mają na liście wiele arkuszy stylów z dużą ilością czerwonego koloru w zasięgu kodu. Wtyczka powinna umieszczać arkusz stylów w kolejce tylko wtedy, gdy rzeczywiście jest on używany na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | unused-javascript": {
    "message": "Dobrym rozwiązaniem może być ograniczenie liczby [wtyczek WordPressa](https://wordpress.org/plugins/) wczytujących na stronie nieużywany kod JavaScript albo zmiana tych wtyczek na inne. Aby zidentyfikować wtyczki, które dodają nieistotny kod JS, uruchom [zasięg kodu](https://developer.chrome.com/docs/devtools/coverage/) w Chrome DevTools. Możesz zidentyfikować taki motyw/wtyczkę w adresie URL skryptu. Szukaj wtyczek, które mają na liście wiele skryptów z dużą ilością czerwonego koloru w zasięgu kodu. Wtyczka powinna umieszczać skrypt w kolejce, tylko jeśli rzeczywiście jest on używany na stronie."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | uses-long-cache-ttl": {
    "message": "Dowiedz się więcej o [pamięci podręcznej przeglądarki w WordPressie](https://wordpress.org/support/article/optimization/#browser-caching)."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | uses-optimized-images": {
    "message": "Pomocna może być [wtyczka WordPressa do optymalizacji obrazów](https://wordpress.org/plugins/search/optimize+images/), która kompresuje obrazy, zachowując ich jakość."
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | uses-responsive-images": {
    "message": "Przesyłaj obrazy bezpośrednio przez [bibliotekę multimediów](https://wordpress.org/support/article/media-library-screen/), by mieć pewność, że wymagane rozmiary obrazów są dostępne, a następnie wstawiaj je z biblioteki multimediów lub używaj widżetu obrazów, by zapewnić użycie optymalnych rozmiarów obrazów (także w dynamicznych punktach przerwania). Unikaj używania obrazów `Full Size`, chyba że wymiary są adekwatne do danego zastosowania. [Więcej informacji](https://wordpress.org/support/article/inserting-images-into-posts-and-pages/)"
  },
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | uses-text-compression": {
    "message": "Możesz włączyć kompresję tekstu w konfiguracji swojego serwera WWW."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | modern-image-formats": {
    "message": "Na platformie WP Rocket, na karcie Image Optimization (Optymalizacja obrazu) włącz opcję „Imagify”, aby przekonwertować obrazy do formatu WebP."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | offscreen-images": {
    "message": "Aby rozwiązać ten problem, na platformie WP Rocket włącz [LazyLoad](https://docs.wp-rocket.me/article/1141-lazyload-for-images) (Leniwe ładowanie). Ta funkcja opóźnia wczytywanie obrazów, dopóki użytkownik nie przewinie strony i rzeczywiście nie będzie musiał ich zobaczyć."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | render-blocking-resources": {
    "message": "Aby rozwiązać ten problem, na platformie WP Rocket włącz funkcję [Remove Unused CSS](https://docs.wp-rocket.me/article/1529-remove-unused-css) (Usuwaj nieużywany kod CSS) i [Load JavaScript deferred](https://docs.wp-rocket.me/article/1265-load-javascript-deferred) (Ładuj odroczony JavaScript). Te funkcje zoptymalizują pliki JavaScript i CSS, aby nie blokowały one renderowania strony."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unminified-css": {
    "message": "Aby rozwiązać ten problem, na platformie WP Rocket włącz funkcję [Minify CSS files](https://docs.wp-rocket.me/article/1350-css-minify-combine) (Minifikuj pliki CSS). Wszelkie spacje i komentarze w plikach CSS Twojej witryny zostaną usunięte, aby zmniejszyć rozmiar pliku i tym samym przyspieszyć pobieranie."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unminified-javascript": {
    "message": "Aby rozwiązać ten problem, na platformie WP Rocket włącz funkcję [Minify JavaScript files](https://docs.wp-rocket.me/article/1351-javascript-minify-combine) (Minifikuj pliki JavaScript). Puste miejsca i komentarze w plikach JavaScript zostaną usunięte, aby zmniejszyć ich rozmiar i tym samym przyspieszyć pobieranie."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unused-css-rules": {
    "message": "Aby rozwiązać ten problem, na platformie WP Rocket włącz funkcję [Remove Unused CSS](https://docs.wp-rocket.me/article/1529-remove-unused-css) (Usuwaj nieużywany kod CSS). Zmniejsza to rozmiar strony przez usunięcie nieużywanych arkuszy stylów i kodu CSS, zachowując jednocześnie tylko używany kod CSS w przypadku każdej strony."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unused-javascript": {
    "message": "Aby rozwiązać ten problem, na platformie WP Rocket włącz funkcję [Delay JavaScript execution](https://docs.wp-rocket.me/article/1349-delay-javascript-execution) (Opóźniaj wykonanie JavaScriptu). Przyspieszy to wczytywanie strony, opóźniając wykonanie skryptów do momentu interakcji użytkownika. Jeśli Twoja witryna zawiera elementy iframe, możesz też używać dostępnych na platformie WP Rocket funkcji [LazyLoad for iframes and videos](https://docs.wp-rocket.me/article/1674-lazyload-for-iframes-and-videos) (Przeprowadzaj leniwe ładowanie elementów iframe i filmów) oraz [Replace YouTube iframe with preview image](https://docs.wp-rocket.me/article/1488-replace-youtube-iframe-with-preview-image) (Zastępuj element iframe YouTube obrazem podglądu)."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | uses-optimized-images": {
    "message": "Na platformie WP Rocket, na karcie Image Optimization (Optymalizacja obrazu) włącz opcję „Imagify” i uruchom optymalizację zbiorczą (ang. Bulk Optimization), aby skompresować obrazy."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | uses-rel-preconnect": {
    "message": "Na platformie WP Rocket używaj funkcji [Prefetch DNS Requests](https://docs.wp-rocket.me/article/1302-prefetch-dns-requests) (Pobieraj z wyprzedzeniem żądania DNS), aby dodać wskazówkę „dns-prefetch” i przyspieszyć łączenie z domenami zewnętrznymi. Poza tym WP Rocket automatycznie dodaje wskazówkę „preconnect” do [domeny Google Fonts](https://docs.wp-rocket.me/article/1312-optimize-google-fonts) i rekordów CNAME dodanych za pomocą funkcji [Enable CDN](https://docs.wp-rocket.me/article/42-using-wp-rocket-with-a-cdn) (Włącz CDN)."
  },
  "node_modules/lighthouse-stack-packs/packs/wp-rocket.js | uses-rel-preload": {
    "message": "Aby rozwiązać ten problem w przypadku czcionek, na platformie WP Rocket włącz funkcję [Remove Unused CSS](https://docs.wp-rocket.me/article/1529-remove-unused-css) (Usuwaj nieużywany kod CSS). Najważniejsze czcionki witryny będą wstępnie wczytywane z priorytetem."
  },
  "report/renderer/report-utils.js | calculatorLink": {
    "message": "Zobacz kalkulator."
  },
  "report/renderer/report-utils.js | collapseView": {
    "message": "Zwiń widok"
  },
  "report/renderer/report-utils.js | crcInitialNavigation": {
    "message": "Początkowa nawigacja"
  },
  "report/renderer/report-utils.js | crcLongestDurationLabel": {
    "message": "Maksymalne opóźnienie ścieżki krytycznej:"
  },
  "report/renderer/report-utils.js | dropdownCopyJSON": {
    "message": "Skopiuj JSON"
  },
  "report/renderer/report-utils.js | dropdownDarkTheme": {
    "message": "Przełącz ciemny motyw"
  },
  "report/renderer/report-utils.js | dropdownPrintExpanded": {
    "message": "Drukuj rozwinięty"
  },
  "report/renderer/report-utils.js | dropdownPrintSummary": {
    "message": "Drukuj podsumowanie"
  },
  "report/renderer/report-utils.js | dropdownSaveGist": {
    "message": "Zapisz jako Gist"
  },
  "report/renderer/report-utils.js | dropdownSaveHTML": {
    "message": "Zapisz jako HTML"
  },
  "report/renderer/report-utils.js | dropdownSaveJSON": {
    "message": "Zapisz jako JSON"
  },
  "report/renderer/report-utils.js | dropdownViewUnthrottledTrace": {
    "message": "Wyświetl niezmodyfikowany ślad"
  },
  "report/renderer/report-utils.js | dropdownViewer": {
    "message": "Otwórz w przeglądarce"
  },
  "report/renderer/report-utils.js | errorLabel": {
    "message": "Błąd"
  },
  "report/renderer/report-utils.js | errorMissingAuditInfo": {
    "message": "Błąd raportu: brak informacji o audycie"
  },
  "report/renderer/report-utils.js | expandView": {
    "message": "Rozwiń widok"
  },
  "report/renderer/report-utils.js | firstPartyChipLabel": {
    "message": "Własna"
  },
  "report/renderer/report-utils.js | footerIssue": {
    "message": "Zgłoś problem"
  },
  "report/renderer/report-utils.js | hide": {
    "message": "Ukryj"
  },
  "report/renderer/report-utils.js | labDataTitle": {
    "message": "Dane laboratoryjne"
  },
  "report/renderer/report-utils.js | lsPerformanceCategoryDescription": {
    "message": "Bieżąca strona została przeanalizowana przez narzędzie [Lighthouse](https://developers.google.com/web/tools/lighthouse/) wraz z emulacją sieci komórkowej. Wartości są szacunkowe i mogą się zmieniać."
  },
  "report/renderer/report-utils.js | manualAuditsGroupTitle": {
    "message": "Dodatkowe elementy do ręcznego sprawdzenia"
  },
  "report/renderer/report-utils.js | notApplicableAuditsGroupTitle": {
    "message": "Nie dotyczy"
  },
  "report/renderer/report-utils.js | openInANewTabTooltip": {
    "message": "Otwórz w nowej karcie"
  },
  "report/renderer/report-utils.js | opportunityResourceColumnLabel": {
    "message": "Możliwość"
  },
  "report/renderer/report-utils.js | opportunitySavingsColumnLabel": {
    "message": "Szacowane oszczędności"
  },
  "report/renderer/report-utils.js | passedAuditsGroupTitle": {
    "message": "Zaliczone audyty"
  },
  "report/renderer/report-utils.js | runtimeAnalysisWindow": {
    "message": "Wstępne wczytanie strony"
  },
  "report/renderer/report-utils.js | runtimeAnalysisWindowSnapshot": {
    "message": "Migawka z określonego momentu"
  },
  "report/renderer/report-utils.js | runtimeAnalysisWindowTimespan": {
    "message": "Okres interakcji użytkownika"
  },
  "report/renderer/report-utils.js | runtimeCustom": {
    "message": "Ograniczanie niestandardowe"
  },
  "report/renderer/report-utils.js | runtimeDesktopEmulation": {
    "message": "Emulacja pulpitu"
  },
  "report/renderer/report-utils.js | runtimeMobileEmulation": {
    "message": "Emulacja Moto G Power"
  },
  "report/renderer/report-utils.js | runtimeNoEmulation": {
    "message": "Bez emulacji"
  },
  "report/renderer/report-utils.js | runtimeSettingsAxeVersion": {
    "message": "Wersja biblioteki Axe"
  },
  "report/renderer/report-utils.js | runtimeSettingsBenchmark": {
    "message": "Nieograniczona moc procesora/pamięci"
  },
  "report/renderer/report-utils.js | runtimeSettingsCPUThrottling": {
    "message": "Ograniczanie wykorzystania procesora"
  },
  "report/renderer/report-utils.js | runtimeSettingsDevice": {
    "message": "Urządzenie"
  },
  "report/renderer/report-utils.js | runtimeSettingsNetworkThrottling": {
    "message": "Ograniczanie wykorzystania sieci"
  },
  "report/renderer/report-utils.js | runtimeSettingsScreenEmulation": {
    "message": "Emulacja ekranu"
  },
  "report/renderer/report-utils.js | runtimeSettingsUANetwork": {
    "message": "Klient użytkownika (sieć)"
  },
  "report/renderer/report-utils.js | runtimeSingleLoad": {
    "message": "Sesja ograniczona do jednej strony"
  },
  "report/renderer/report-utils.js | runtimeSingleLoadTooltip": {
    "message": "Te dane pochodzą z sesji ograniczonej do jednej strony w odróżnieniu od wartości w polu zawierającym podsumowanie kilku sesji."
  },
  "report/renderer/report-utils.js | runtimeSlow4g": {
    "message": "Ograniczanie spowalniające do 4G"
  },
  "report/renderer/report-utils.js | runtimeUnknown": {
    "message": "Nieznane"
  },
  "report/renderer/report-utils.js | show": {
    "message": "Pokaż"
  },
  "report/renderer/report-utils.js | showRelevantAudits": {
    "message": "Pokaż audyty dotyczące:"
  },
  "report/renderer/report-utils.js | snippetCollapseButtonLabel": {
    "message": "Zwiń fragment"
  },
  "report/renderer/report-utils.js | snippetExpandButtonLabel": {
    "message": "Rozwiń fragment"
  },
  "report/renderer/report-utils.js | thirdPartyResourcesLabel": {
    "message": "Pokaż zasoby zewnętrzne"
  },
  "report/renderer/report-utils.js | throttlingProvided": {
    "message": "Obsługiwane przez środowisko"
  },
  "report/renderer/report-utils.js | toplevelWarningsMessage": {
    "message": "Podczas tego uruchomienia Lighthouse wystąpiły problemy:"
  },
  "report/renderer/report-utils.js | unattributable": {
    "message": "Niepowiązane"
  },
  "report/renderer/report-utils.js | unscoredLabel": {
    "message": "Bez oceny"
  },
  "report/renderer/report-utils.js | unscoredTitle": {
    "message": "Ten audyt nie ma wpływu na ogólną ocenę kategorii."
  },
  "report/renderer/report-utils.js | varianceDisclaimer": {
    "message": "Wartości są szacunkowe i mogą się zmieniać. [Wynik wydajności jest obliczony](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) bezpośrednio na podstawie tych danych."
  },
  "report/renderer/report-utils.js | viewTraceLabel": {
    "message": "Wyświetl ślad"
  },
  "report/renderer/report-utils.js | viewTreemapLabel": {
    "message": "Pokaż diagram"
  },
  "report/renderer/report-utils.js | warningAuditsGroupTitle": {
    "message": "Audyty zaliczone z ostrzeżeniami"
  },
  "report/renderer/report-utils.js | warningHeader": {
    "message": "Ostrzeżenia "
  },
  "treemap/app/src/util.js | allLabel": {
    "message": "Wszystko"
  },
  "treemap/app/src/util.js | allScriptsDropdownLabel": {
    "message": "Wszystkie skrypty"
  },
  "treemap/app/src/util.js | coverageColumnName": {
    "message": "Pokrycie"
  },
  "treemap/app/src/util.js | duplicateModulesLabel": {
    "message": "Zduplikowane moduły"
  },
  "treemap/app/src/util.js | duplicatedBytesLabel": {
    "message": "Zduplikowane bajty"
  },
  "treemap/app/src/util.js | resourceBytesLabel": {
    "message": "Rozmiar zasobu (w bajtach)"
  },
  "treemap/app/src/util.js | tableColumnName": {
    "message": "Nazwa"
  },
  "treemap/app/src/util.js | toggleTableButtonLabel": {
    "message": "Przełącz tabelę"
  },
  "treemap/app/src/util.js | transferBytesLabel": {
    "message": "Przesyłane dane w bajtach"
  },
  "treemap/app/src/util.js | unusedBytesLabel": {
    "message": "Nieużywane bajty"
  }
}
