@endora-commerce/mod-i18n 0.100.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +52 -0
  3. package/dist/backend/cli/coverage.d.ts +29 -0
  4. package/dist/backend/cli/coverage.d.ts.map +1 -0
  5. package/dist/backend/cli/coverage.js +84 -0
  6. package/dist/backend/cli/coverage.js.map +1 -0
  7. package/dist/backend/cli/reload.d.ts +35 -0
  8. package/dist/backend/cli/reload.d.ts.map +1 -0
  9. package/dist/backend/cli/reload.js +18 -0
  10. package/dist/backend/cli/reload.js.map +1 -0
  11. package/dist/backend/entities/translation-bundle.entity.d.ts +23 -0
  12. package/dist/backend/entities/translation-bundle.entity.d.ts.map +1 -0
  13. package/dist/backend/entities/translation-bundle.entity.js +69 -0
  14. package/dist/backend/entities/translation-bundle.entity.js.map +1 -0
  15. package/dist/backend/index.d.ts +164 -0
  16. package/dist/backend/index.d.ts.map +1 -0
  17. package/dist/backend/index.js +134 -0
  18. package/dist/backend/index.js.map +1 -0
  19. package/dist/backend/routes.admin.d.ts +41 -0
  20. package/dist/backend/routes.admin.d.ts.map +1 -0
  21. package/dist/backend/routes.admin.js +74 -0
  22. package/dist/backend/routes.admin.js.map +1 -0
  23. package/dist/backend/services/bundle-loader.d.ts +49 -0
  24. package/dist/backend/services/bundle-loader.d.ts.map +1 -0
  25. package/dist/backend/services/bundle-loader.js +84 -0
  26. package/dist/backend/services/bundle-loader.js.map +1 -0
  27. package/dist/backend/services/bundle-reconciler.d.ts +82 -0
  28. package/dist/backend/services/bundle-reconciler.d.ts.map +1 -0
  29. package/dist/backend/services/bundle-reconciler.js +38 -0
  30. package/dist/backend/services/bundle-reconciler.js.map +1 -0
  31. package/dist/backend/services/i18n-service.d.ts +67 -0
  32. package/dist/backend/services/i18n-service.d.ts.map +1 -0
  33. package/dist/backend/services/i18n-service.js +323 -0
  34. package/dist/backend/services/i18n-service.js.map +1 -0
  35. package/dist/backend/services/missing-key-logger.d.ts +52 -0
  36. package/dist/backend/services/missing-key-logger.d.ts.map +1 -0
  37. package/dist/backend/services/missing-key-logger.js +37 -0
  38. package/dist/backend/services/missing-key-logger.js.map +1 -0
  39. package/dist/manifest.d.ts +214 -0
  40. package/dist/manifest.d.ts.map +1 -0
  41. package/dist/manifest.js +245 -0
  42. package/dist/manifest.js.map +1 -0
  43. package/dist/migrations/20260507T091405_i18n_admin_i18n_init.d.ts +30 -0
  44. package/dist/migrations/20260507T091405_i18n_admin_i18n_init.d.ts.map +1 -0
  45. package/dist/migrations/20260507T091405_i18n_admin_i18n_init.js +50 -0
  46. package/dist/migrations/20260507T091405_i18n_admin_i18n_init.js.map +1 -0
  47. package/dist/migrations/index.d.ts +23 -0
  48. package/dist/migrations/index.d.ts.map +1 -0
  49. package/dist/migrations/index.js +23 -0
  50. package/dist/migrations/index.js.map +1 -0
  51. package/docs/i18n.md +166 -0
  52. package/i18n/en.json +1957 -0
  53. package/i18n/pl.json +1957 -0
  54. package/package.json +68 -0
package/i18n/pl.json ADDED
@@ -0,0 +1,1957 @@
1
+ {
2
+ "action.amount_off_cart": "Zniżka Y zł na cały koszyk",
3
+ "action.buy_x_get_y_free": "Kup X otrzymaj Y za darmo",
4
+ "action.buy_x_units_amount_off": "Kup X sztuk produktu, Y zł zniżki na koszyk",
5
+ "action.buy_x_units_percent_off": "Kup X sztuk produktu, Y% zniżki na koszyk",
6
+ "action.buy_x_units_y_free": "Kup X sztuk produktu, Y gratis",
7
+ "action.every_nth_product_percent_off": "Co X-ty produkt Y% taniej",
8
+ "action.free_delivery": "Zaaplikuj darmową dostawę",
9
+ "action.percentage_off_cart": "Zniżka X% na cały koszyk",
10
+ "action.spend_x_amount_off": "Za każde wydane X zniżka Y zł na koszyk",
11
+ "action.spend_x_percent_off": "Za każde wydane X zniżka Y% na koszyk",
12
+ "adminRoles.confirmDelete": "Usunąć rolę „{name}”?",
13
+ "adminRoles.delete": "Usuń rolę",
14
+ "adminRoles.dependencies.add": "Dodaj {code}",
15
+ "adminRoles.dependencies.addAll": "Dodaj wszystkie",
16
+ "adminRoles.dependencies.description": "Te uprawnienia deklarują, że rola, która je posiada, potrzebuje też uprawnień poniżej — inaczej otwierane przez nie ekrany działają tylko częściowo. Dodanie ich to sugestia: rolę można zapisać także bez nich.",
17
+ "adminRoles.dependencies.title": "Niektóre uprawnienia wymagają innych",
18
+ "adminRoles.empty": "Brak ról.",
19
+ "adminRoles.error.delete": "Usunięcie nie powiodło się.",
20
+ "adminRoles.error.load": "Nie udało się załadować.",
21
+ "adminRoles.error.save": "Zapis nie powiódł się.",
22
+ "adminRoles.field.code": "Kod",
23
+ "adminRoles.field.displayName": "Nazwa wyświetlana",
24
+ "adminRoles.field.requires2fa": "Wymaga uwierzytelniania dwuskładnikowego u przypisanych użytkowników",
25
+ "adminRoles.info.deleted": "Usunięto rolę {code}.",
26
+ "adminRoles.info.saved": "Zapisano rolę {code}.",
27
+ "adminRoles.loading": "Ładowanie…",
28
+ "adminRoles.newRole": "Nowa rola",
29
+ "adminRoles.owners": "dostępne, dopóki włączone są moduły: {modules}",
30
+ "adminRoles.page.descriptionPrefix": "Zestawy uprawnień przypisywane w",
31
+ "adminRoles.page.title": "Role",
32
+ "adminRoles.permission.admin:read": "Podgląd powiadomień administratora",
33
+ "adminRoles.permission.admin_users:manage": "Zarządzanie użytkownikami admina i rolami",
34
+ "adminRoles.permission.analytics:read": "Wyświetlanie analityki",
35
+ "adminRoles.permission.assets.read": "Przeglądanie biblioteki zasobów",
36
+ "adminRoles.permission.assets.write": "Przesyłanie i zarządzanie zasobami",
37
+ "adminRoles.permission.audit_log:read": "Wyświetlanie dziennika audytu",
38
+ "adminRoles.permission.blog.read": "Wyświetlanie treści bloga",
39
+ "adminRoles.permission.blog.write": "Tworzenie i publikowanie treści bloga",
40
+ "adminRoles.permission.carts:read": "Podgląd koszyków klientów",
41
+ "adminRoles.permission.carts:reject": "Odrzucenie koszyka oczekującego na akceptację organizacji",
42
+ "adminRoles.permission.catalog:read": "Wyświetlanie katalogu",
43
+ "adminRoles.permission.catalog:write": "Edycja katalogu",
44
+ "adminRoles.permission.cms.read": "Wyświetlanie treści CMS",
45
+ "adminRoles.permission.cms.write": "Edycja treści CMS",
46
+ "adminRoles.permission.comparisons:read": "Wyświetlanie porównań produktów",
47
+ "adminRoles.permission.credentials:read": "Podgląd konfiguracji poświadczeń",
48
+ "adminRoles.permission.credentials:write": "Zarządzanie konfiguracjami poświadczeń",
49
+ "adminRoles.permission.credit_limits:manage": "Przyznawanie i korygowanie limitów kredytowych",
50
+ "adminRoles.permission.currencies:read": "Podgląd walut",
51
+ "adminRoles.permission.currencies:write": "Konfiguracja walut",
52
+ "adminRoles.permission.custom_fields:read": "Podgląd pól niestandardowych",
53
+ "adminRoles.permission.custom_fields:write": "Zarządzanie polami niestandardowymi",
54
+ "adminRoles.permission.customer_groups:read": "Wyświetlanie grup klientów",
55
+ "adminRoles.permission.customer_groups:write": "Zarządzanie grupami klientów",
56
+ "adminRoles.permission.customers:impersonate": "Podszywanie się pod klientów",
57
+ "adminRoles.permission.customers:manage": "Zarządzanie organizacjami klientów",
58
+ "adminRoles.permission.customers:read": "Wyświetlanie klientów",
59
+ "adminRoles.permission.delivery_methods:read": "Podgląd metod dostawy",
60
+ "adminRoles.permission.delivery_methods:write": "Konfiguracja metod dostawy",
61
+ "adminRoles.permission.dictionary.write": "Zarządzanie rejestrem słownika",
62
+ "adminRoles.permission.google_analytics:read": "Podgląd konfiguracji Google Analytics",
63
+ "adminRoles.permission.google_analytics:write": "Zarządzanie konfiguracją i zdarzeniami Google Analytics",
64
+ "adminRoles.permission.integrations:manage": "Zarządzanie kluczami API i webhookami",
65
+ "adminRoles.permission.inventory:read": "Podgląd stanów i magazynów",
66
+ "adminRoles.permission.inventory:write": "Zarządzanie stanami i magazynami",
67
+ "adminRoles.permission.invoices:read": "Podgląd faktur i pobieranie PDF faktur",
68
+ "adminRoles.permission.invoices:write": "Wystawianie/korygowanie faktur, edycja szablonów i konfiguracja fakturowania",
69
+ "adminRoles.permission.linkedin_ads:read": "Podgląd konfiguracji LinkedIn Ads",
70
+ "adminRoles.permission.linkedin_ads:write": "Zarządzanie konfiguracją LinkedIn Ads i mapowaniem konwersji",
71
+ "adminRoles.permission.megamenu.read": "Wyświetlanie megamenu",
72
+ "adminRoles.permission.megamenu.write": "Edycja megamenu",
73
+ "adminRoles.permission.meta_ads:read": "Podgląd konfiguracji Meta Ads",
74
+ "adminRoles.permission.meta_ads:write": "Zarządzanie konfiguracją Meta Ads i zdarzeniami niestandardowymi",
75
+ "adminRoles.permission.newsletter:read": "Podgląd newslettera",
76
+ "adminRoles.permission.newsletter:write": "Zarządzanie subskrybentami, kampaniami, automatyzacjami i usługą wysyłki newslettera",
77
+ "adminRoles.permission.orders:read": "Wyświetlanie zamówień",
78
+ "adminRoles.permission.orders:write": "Edycja zamówień / zmiana statusu",
79
+ "adminRoles.permission.organizations:assign-sales-rep": "Przypisywanie opiekunów handlowych do organizacji",
80
+ "adminRoles.permission.organizations:rollup": "Działanie w obrębie organizacji podrzędnych",
81
+ "adminRoles.permission.payment_methods:read": "Podgląd metod płatności",
82
+ "adminRoles.permission.payment_methods:write": "Konfiguracja metod płatności",
83
+ "adminRoles.permission.payments:read": "Podgląd płatności",
84
+ "adminRoles.permission.payments:write": "Rejestrowanie i ponawianie płatności",
85
+ "adminRoles.permission.platform.modules.activate": "Włączanie i wyłączanie modułów",
86
+ "adminRoles.permission.platform.modules.read": "Wyświetlanie cyklu życia modułów",
87
+ "adminRoles.permission.price_lists:read": "Podgląd cenników i reguł cenowych",
88
+ "adminRoles.permission.price_lists:write": "Edycja cenników, progów ilościowych i trybów prezentacji cen",
89
+ "adminRoles.permission.product_feeds:read": "Podgląd feedów produktowych",
90
+ "adminRoles.permission.product_feeds:write": "Zarządzanie feedami produktowymi",
91
+ "adminRoles.permission.promotions:delete": "Usuwanie promocji oraz reguł",
92
+ "adminRoles.permission.promotions:read": "Podgląd promocji",
93
+ "adminRoles.permission.promotions:write": "Tworzenie i edycja promocji oraz reguł",
94
+ "adminRoles.permission.returns:read": "Podgląd zwrotów / spraw RMA",
95
+ "adminRoles.permission.returns:write": "Zarządzanie zwrotami / sprawami RMA i rozliczeniem",
96
+ "adminRoles.permission.rfqs:handle": "Obsługa zapytań ofertowych",
97
+ "adminRoles.permission.sales_channels:read": "Wyświetlanie kanałów sprzedaży",
98
+ "adminRoles.permission.sales_channels:write": "Zarządzanie kanałami sprzedaży",
99
+ "adminRoles.permission.search:write": "Konfiguracja wyszukiwania",
100
+ "adminRoles.permission.settings:read": "Wyświetlanie ustawień",
101
+ "adminRoles.permission.settings:write": "Edycja ustawień",
102
+ "adminRoles.permission.taxes:read": "Podgląd reguł podatkowych",
103
+ "adminRoles.permission.taxes:write": "Konfiguracja reguł podatkowych",
104
+ "adminRoles.permission.transactional_emails:read": "Podgląd maili transakcyjnych",
105
+ "adminRoles.permission.transactional_emails:write": "Zarządzanie mailami transakcyjnymi, blokami, szablonami i brandingiem",
106
+ "adminRoles.permissionsHeading": "Uprawnienia",
107
+ "adminRoles.requires": "wymaga {codes}",
108
+ "adminRoles.save": "Zapisz",
109
+ "adminRoles.seeded.blog_manager": "Menedżer bloga",
110
+ "adminRoles.seeded.content_manager": "Menedżer treści",
111
+ "adminRoles.seeded.platform_admin": "Administrator platformy",
112
+ "adminRoles.seeded.read_only": "Administrator tylko do odczytu",
113
+ "adminRoles.selectHint": "Wybierz rolę z listy po lewej lub utwórz nową.",
114
+ "adminRoles.usersLink": "Użytkownicy",
115
+ "adminRoles.wildcardLocked": "Rola platform_admin zawsze ma pełny dostęp i nie można jej zmienić.",
116
+ "adminRoles.wildcardPrefix": "Pełny dostęp nadaje wszystkie uprawnienia poprzez wildcard.",
117
+ "adminRoles.wildcardSuffix": "Wyłącz go, aby wybrać pojedyncze uprawnienia poniżej.",
118
+ "adminRoles.wildcardTitle": "Pełny dostęp",
119
+ "adminRoles.wildcardToggle": "Pełny dostęp",
120
+ "adminUsers.assignLater": "— przypisz później —",
121
+ "adminUsers.column.email": "E-mail",
122
+ "adminUsers.column.lastLogin": "Ostatnie logowanie",
123
+ "adminUsers.column.name": "Imię i nazwisko",
124
+ "adminUsers.column.role": "Rola",
125
+ "adminUsers.column.status": "Status",
126
+ "adminUsers.column.twoFactor": "2FA",
127
+ "adminUsers.confirmRemove": "Usunąć {email}? Nie będzie mógł się więcej zalogować.",
128
+ "adminUsers.create.title": "Utwórz użytkownika",
129
+ "adminUsers.deactivate": "Dezaktywuj",
130
+ "adminUsers.error.create": "Utworzenie nie powiodło się.",
131
+ "adminUsers.error.load": "Nie udało się załadować.",
132
+ "adminUsers.error.remove": "Usunięcie nie powiodło się.",
133
+ "adminUsers.error.resetPassword": "Nie udało się zresetować hasła.",
134
+ "adminUsers.error.update": "Aktualizacja nie powiodła się.",
135
+ "adminUsers.field.firstName": "Imię",
136
+ "adminUsers.field.lastName": "Nazwisko",
137
+ "adminUsers.field.password": "Hasło (min. 12 znaków)",
138
+ "adminUsers.loading": "Ładowanie…",
139
+ "adminUsers.page.descriptionPrefix": "Pracownicy dostawcy z dostępem administracyjnym. Zarządzaj zestawami uprawnień w",
140
+ "adminUsers.page.title": "Użytkownicy",
141
+ "adminUsers.reactivate": "Reaktywuj",
142
+ "adminUsers.remove": "Usuń",
143
+ "adminUsers.resetPassword.action": "Zresetuj hasło",
144
+ "adminUsers.resetPassword.cancel": "Anuluj",
145
+ "adminUsers.resetPassword.done": "Hasło użytkownika {email} zostało zresetowane. Wszystkie jego sesje zostały zakończone — przekaż mu nowe hasło zaufanym kanałem.",
146
+ "adminUsers.resetPassword.hint": "Ustawia nowe hasło od razu i kończy wszystkie sesje tego użytkownika, w tym rozpoczęte przez niego impersonacje.",
147
+ "adminUsers.resetPassword.submit": "Ustaw hasło",
148
+ "adminUsers.resetPassword.title": "Zresetuj hasło dla {email}",
149
+ "adminUsers.rolesLink": "Role",
150
+ "adminUsers.status.active": "Aktywny",
151
+ "adminUsers.status.inactive": "Nieaktywny",
152
+ "adminUsers.twoFactorOn": "wł.",
153
+ "adminUsers.unassigned": "— nieprzypisana —",
154
+ "apiKeys.action.revoke": "Unieważnij",
155
+ "apiKeys.action.revokeConfirm": "Unieważnić ten klucz? Wywołania z jego użyciem natychmiast zaczną się nie udawać.",
156
+ "apiKeys.binding.unbound": "Niepowiązany (platforma)",
157
+ "apiKeys.column.binding": "Powiązanie",
158
+ "apiKeys.column.created": "Utworzono",
159
+ "apiKeys.column.expires": "Wygasa",
160
+ "apiKeys.column.last4": "Ostatnie 4",
161
+ "apiKeys.column.lastUsed": "Ostatnio użyty",
162
+ "apiKeys.column.name": "Nazwa",
163
+ "apiKeys.column.scopes": "Zakresy",
164
+ "apiKeys.column.status": "Status",
165
+ "apiKeys.create.bindingHelp": "Powiąż klucz z dokładnie jedną organizacją, kanałem sprzedaży i kontem serwisowym. Powiązanie jest trwałe — aby je zmienić, unieważnij klucz i utwórz nowy. Wymagane dla zakresów zamówień.",
166
+ "apiKeys.create.bindingTitle": "Powiązanie z organizacją (opcjonalne)",
167
+ "apiKeys.create.expiresHelp": "Po tej chwili klucz przestaje uwierzytelniać. Pozostaw puste, aby klucz nie wygasał.",
168
+ "apiKeys.create.expiresLabel": "Wygasa (opcjonalne)",
169
+ "apiKeys.create.modesHelp": "Klucz bez powiązania jest poświadczeniem platformowym (synchronizacja PIM, odczyty katalogu w cenach kanału). Klucz powiązany z organizacją działa w jej imieniu w przestrzeni /api/v1/external/* — ceny organizacji, przypięty kanał sprzedaży oraz wszystkie ograniczenia organizacji (listy dozwolonych metod płatności/dostawy, limit kredytowy).",
170
+ "apiKeys.create.nameLabel": "Nazwa",
171
+ "apiKeys.create.namePlaceholder": "np. synchronizacja PIM",
172
+ "apiKeys.create.organizationLabel": "Organizacja",
173
+ "apiKeys.create.salesChannelLabel": "Kanał sprzedaży",
174
+ "apiKeys.create.scopesHelp": "Wybierz najmniejszy zestaw, który pozwoli integracji działać.",
175
+ "apiKeys.create.scopesLabel": "Zakresy uprawnień",
176
+ "apiKeys.create.serviceAccountHelp": "Zamówienia składane tym kluczem będą należeć do tego konta klienta. Najpierw wybierz organizację.",
177
+ "apiKeys.create.serviceAccountLabel": "Konto serwisowe",
178
+ "apiKeys.create.submit": "Utwórz klucz",
179
+ "apiKeys.create.submitting": "Tworzenie…",
180
+ "apiKeys.create.title": "Utwórz nowy klucz",
181
+ "apiKeys.empty": "Brak kluczy API.",
182
+ "apiKeys.error.create": "Nie udało się utworzyć klucza.",
183
+ "apiKeys.error.load": "Nie udało się wczytać kluczy API.",
184
+ "apiKeys.error.revoke": "Nie udało się unieważnić klucza.",
185
+ "apiKeys.page.description": "Tokeny bearer dla integracji maszyna-maszyna. Pełny token jest pokazywany tylko raz, w chwili utworzenia.",
186
+ "apiKeys.page.title": "Klucze API",
187
+ "apiKeys.revealed.confirm": "Zapisałem",
188
+ "apiKeys.revealed.copied": "Skopiowano!",
189
+ "apiKeys.revealed.copy": "Kopiuj token",
190
+ "apiKeys.revealed.title": "Zapisz teraz ten token bearer — nie zostanie ponownie pokazany.",
191
+ "apiKeys.status.active": "Aktywny",
192
+ "apiKeys.status.revoked": "Unieważniony",
193
+ "apiKeys.validation.bindingIncomplete": "Powiązanie jest niepodzielne — wybierz organizację, kanał sprzedaży i konto serwisowe albo wyczyść wszystkie trzy.",
194
+ "apiKeys.validation.bindingRequiredForOrders": "Zakresy zamówień wymagają pełnego powiązania: organizacji, kanału sprzedaży i konta serwisowego.",
195
+ "apiKeys.validation.catalogWriteBound": "catalog:write nie jest dozwolony dla klucza powiązanego — zapisy PIM pozostają na poziomie platformy.",
196
+ "apiKeys.validation.expiryFuture": "Data wygaśnięcia musi być w przyszłości.",
197
+ "app.moduleScreenLoading": "Wczytywanie ekranu modułu…",
198
+ "app.notFound": "Nie znaleziono strony. Wybierz moduł z paska bocznego.",
199
+ "appShell.brand": "Platforma B2B",
200
+ "appShell.brand.dashboardLink": "Przejdź do pulpitu",
201
+ "appShell.brand.text": "Endora Commerce",
202
+ "appShell.brand.textPrimary": "Endora",
203
+ "appShell.brand.textAccent": "Commerce",
204
+ "appShell.collapse.collapse": "Zwiń",
205
+ "appShell.collapse.expand": "Rozwiń",
206
+ "appShell.crumb.audit": "Audyt",
207
+ "appShell.crumb.edit": "Edycja",
208
+ "appShell.crumb.editor": "Edytor",
209
+ "appShell.crumb.feedRun": "Generowanie",
210
+ "appShell.crumb.import": "Import",
211
+ "appShell.crumb.myProfile": "Mój profil",
212
+ "appShell.crumb.new": "Nowy",
213
+ "appShell.impersonation.end": "Zakończ podszywanie się",
214
+ "appShell.impersonation.notice": "Każda Twoja akcja jest zapisywana w dzienniku audytu na Twoje konto admina.",
215
+ "appShell.impersonation.title": "Działasz jako {customer}",
216
+ "appShell.languageIndicator.label": "Język interfejsu",
217
+ "appShell.mobileMenu.close": "Zamknij menu",
218
+ "appShell.mobileMenu.open": "Otwórz menu",
219
+ "appShell.mobileMenu.title": "Nawigacja",
220
+ "appShell.nav.home": "Strona główna",
221
+ "appShell.nav.invoiceTemplates": "Szablony faktur",
222
+ "appShell.nav.platformModules": "Moduły",
223
+ "appShell.nav.pwa": "PWA",
224
+ "appShell.notifications.empty": "Brak powiadomień.",
225
+ "appShell.notifications.markAllRead": "Oznacz wszystkie jako przeczytane",
226
+ "appShell.notifications.title": "Powiadomienia",
227
+ "appShell.palette.group.actions": "Akcje",
228
+ "appShell.palette.group.navigate": "Nawigacja",
229
+ "appShell.palette.sub.dashboard": "Pulpit",
230
+ "appShell.profileMenu.open": "Otwórz menu profilu",
231
+ "appShell.profileMenu.profile": "Profil",
232
+ "appShell.profileMenu.signOut": "Wyloguj",
233
+ "appShell.search.commandPalettePlaceholder": "Szukaj produktów, organizacji, akcji…",
234
+ "appShell.search.noMatches": "Brak wyników.",
235
+ "appShell.search.openPalette": "Szukaj (⌘K)",
236
+ "appShell.search.placeholder": "Szukaj…",
237
+ "appShell.search.shortcut": "Ctrl+K",
238
+ "appShell.search.shortcutSymbol": "⌘K",
239
+ "appShell.search.voiceInput": "Dyktowanie (mowa na tekst)",
240
+ "appShell.search.voiceInputStop": "Zatrzymaj dyktowanie",
241
+ "appShell.section.analyticsAds": "Analityka i reklamy",
242
+ "appShell.section.catalog": "Katalog",
243
+ "appShell.section.channels": "Kanały",
244
+ "appShell.section.content": "Treści",
245
+ "appShell.section.customers": "Klienci",
246
+ "appShell.section.inventory": "Magazyn",
247
+ "appShell.section.main": "Główne",
248
+ "appShell.section.messaging": "Wiadomości",
249
+ "appShell.section.newsletter": "Newsletter",
250
+ "appShell.section.pricing": "Cennik",
251
+ "appShell.section.sales": "Sprzedaż",
252
+ "appShell.section.system": "System",
253
+ "appShell.sidebarToggle.collapse": "Zwiń pasek boczny (⌘B)",
254
+ "appShell.sidebarToggle.expand": "Rozwiń pasek boczny (⌘B)",
255
+ "appShell.skipToContent": "Przejdź do treści",
256
+ "appShell.topbar.help": "Pomoc",
257
+ "appShell.topbar.notifications": "Powiadomienia",
258
+ "auditLog.action.detail": "Szczegóły",
259
+ "auditLog.action.hide": "Ukryj",
260
+ "auditLog.actor.system": "system",
261
+ "auditLog.api_key.out_of_scope": "Klucz API poza zakresem",
262
+ "auditLog.column.action": "Akcja",
263
+ "auditLog.column.actor": "Wykonawca",
264
+ "auditLog.column.object": "Obiekt",
265
+ "auditLog.column.when": "Kiedy",
266
+ "auditLog.detail.after": "Po",
267
+ "auditLog.detail.before": "Przed",
268
+ "auditLog.detail.impersonatedCustomer": "podszywano się pod klienta",
269
+ "auditLog.detail.ip": "IP",
270
+ "auditLog.detail.request": "req",
271
+ "auditLog.detail.userAgent": "UA",
272
+ "auditLog.empty": "Żaden wpis nie pasuje do bieżącego filtra.",
273
+ "auditLog.error.load": "Nie udało się wczytać dziennika audytu.",
274
+ "auditLog.filter.action": "Akcja",
275
+ "auditLog.filter.actor": "Wykonawca (id użytkownika admina)",
276
+ "auditLog.filter.apply": "Zastosuj filtry",
277
+ "auditLog.filter.clear": "Wyczyść",
278
+ "auditLog.filter.impersonatedCustomer": "Id klienta, za którego się podszywano",
279
+ "auditLog.filter.objectId": "Id obiektu",
280
+ "auditLog.filter.objectType": "Typ obiektu",
281
+ "auditLog.impersonation.end": "Zakończono podszywanie się",
282
+ "auditLog.impersonation.start": "Rozpoczęto podszywanie się",
283
+ "auditLog.module.dependency_blocked": "Zależność modułu zablokowana",
284
+ "auditLog.module.disabled": "Wyłączono moduł",
285
+ "auditLog.module.enabled": "Włączono moduł",
286
+ "auditLog.module.install_failed": "Instalacja modułu nie powiodła się",
287
+ "auditLog.module.installed": "Zainstalowano moduł",
288
+ "auditLog.module.uninstalled": "Odinstalowano moduł",
289
+ "auditLog.order.place_on_behalf": "Złożono zamówienie w imieniu klienta",
290
+ "auditLog.page.description": "Tylko-do-odczytu dziennik wrażliwych operacji.",
291
+ "auditLog.page.title": "Dziennik audytu",
292
+ "carts.column.discount": "Rabat",
293
+ "categoryTreePicker.aria.treeLabel": "Drzewo kategorii katalogu",
294
+ "categoryTreePicker.collapse": "Zwiń gałąź",
295
+ "categoryTreePicker.empty.noCategories": "Brak kategorii w katalogu.",
296
+ "categoryTreePicker.empty.noMatches": "Brak kategorii pasujących do filtra.",
297
+ "categoryTreePicker.expand": "Rozwiń gałąź",
298
+ "categoryTreePicker.filter.placeholder": "Filtruj kategorie…",
299
+ "categoryTreePicker.loading": "Ładowanie kategorii…",
300
+ "common.action.back": "Wstecz",
301
+ "common.action.cancel": "Anuluj",
302
+ "common.action.close": "Zamknij",
303
+ "common.action.confirm": "Potwierdź",
304
+ "common.action.create": "Utwórz",
305
+ "common.action.delete": "Usuń",
306
+ "common.action.edit": "Edytuj",
307
+ "common.action.retry": "Ponów",
308
+ "common.action.save": "Zapisz",
309
+ "common.action.search": "Szukaj",
310
+ "common.action.saveAndExit": "Zapisz i wyjdź",
311
+ "common.field.code": "Kod",
312
+ "common.field.name": "Nazwa",
313
+ "common.combobox.clearSelection": "Wyczyść wybór",
314
+ "common.pagination.next": "Następna",
315
+ "common.pagination.noResults": "Brak wyników",
316
+ "common.pagination.pageXofY": "Strona {page} z {total}",
317
+ "common.pagination.previous": "Poprzednia",
318
+ "common.pagination.rowsPerPage": "Wierszy na stronę:",
319
+ "common.pagination.showingRange": "Pokazano {start}–{end} z {total}",
320
+ "common.state.empty": "Brak danych do wyświetlenia.",
321
+ "common.state.error": "Coś poszło nie tak.",
322
+ "common.state.loading": "Wczytywanie…",
323
+ "common.state.saving": "Zapisywanie…",
324
+ "common.toast.deleted": "Usunięto.",
325
+ "common.toast.saved": "Zapisano.",
326
+ "common.validation.invalid": "Ta wartość jest nieprawidłowa.",
327
+ "common.validation.required": "To pole jest wymagane.",
328
+ "assetPicker.searchPlaceholder": "Szukaj po nazwie pliku lub etykiecie…",
329
+ "assetPicker.empty": "Żadne zasoby nie pasują jeszcze do tego zapytania.",
330
+ "assetPicker.uploadNew": "Lub prześlij nowy zasób",
331
+ "assetPicker.upload.dropAria": "Upuść plik tutaj albo kliknij, aby przesłać",
332
+ "assetPicker.upload.dropCopy": "Upuść plik tutaj albo kliknij, aby go wybrać",
333
+ "assetPicker.upload.error.wrongType": "Oczekiwano pliku typu {expected}; otrzymano \"{actual}\".",
334
+ "assetPicker.upload.trigger": "Prześlij plik",
335
+ "assetPicker.upload.uploading": "Przesyłanie…",
336
+ "contentLanguageTabs.ariaLabel": "Język treści",
337
+ "contentLanguageTabs.empty": "Nie wybrano języków treści.",
338
+ "countryPicker.selectCountry": "Wybierz kraj",
339
+ "countryPicker.inactiveGroup": "Nieaktywne",
340
+ "countryPicker.inactiveLabel": "{label} (nieaktywny)",
341
+ "currencyPicker.selectCurrency": "Wybierz walutę",
342
+ "currencyPicker.inactiveGroup": "Nieaktywne",
343
+ "currencyPicker.inactiveLabel": "{label} ({code}, nieaktywna)",
344
+ "pageBuilder.applyTemplate.button": "Zastosuj szablon",
345
+ "pageBuilder.applyTemplate.cancel": "Anuluj",
346
+ "pageBuilder.applyTemplate.confirm": "Zastosuj szablon",
347
+ "pageBuilder.applyTemplate.description": "Zastąp bieżący canvas zapisanym układem szablonu content.",
348
+ "pageBuilder.applyTemplate.empty": "Brak szablonów content.",
349
+ "pageBuilder.applyTemplate.replaceWarning": "Canvas nie jest pusty — zastosowanie szablonu go zastąpi.",
350
+ "pageBuilder.applyTemplate.selectLabel": "Szablon",
351
+ "pageBuilder.applyTemplate.success": "Szablon zastosowany.",
352
+ "pageBuilder.applyTemplate.title": "Zastosuj szablon content",
353
+ "pageBuilder.clearCanvas.button": "Wyczyść canvas",
354
+ "pageBuilder.clearCanvas.cancel": "Anuluj",
355
+ "pageBuilder.clearCanvas.confirm": "Wyczyść canvas",
356
+ "pageBuilder.clearCanvas.description": "Usunie wszystkie komponenty z bieżącej wersji językowej. Możesz cofnąć zmianę historią edytora w tej sesji.",
357
+ "pageBuilder.clearCanvas.title": "Wyczyścić canvas?",
358
+ "pageBuilder.copyLanguage.button": "Kopiuj z języka",
359
+ "pageBuilder.copyLanguage.cancel": "Anuluj",
360
+ "pageBuilder.copyLanguage.confirm": "Kopiuj",
361
+ "pageBuilder.copyLanguage.description": "Zastąp bieżący canvas ({target}) treścią z innej wersji językowej.",
362
+ "pageBuilder.copyLanguage.noTargets": "Najpierw dodaj kolejny język treści w Scope.",
363
+ "pageBuilder.copyLanguage.sourceLabel": "Język źródłowy",
364
+ "pageBuilder.copyLanguage.success": "Treść skopiowana z {language}.",
365
+ "pageBuilder.copyLanguage.title": "Kopiuj treść z innego języka",
366
+ "pageBuilder.fullscreen.enter": "Pełny ekran",
367
+ "pageBuilder.fullscreen.exit": "Zamknij pełny ekran",
368
+ "pageBuilder.saveAsTemplate.button": "Zapisz jako szablon",
369
+ "pageBuilder.saveAsTemplate.cancel": "Anuluj",
370
+ "pageBuilder.saveAsTemplate.confirm": "Zapisz szablon",
371
+ "pageBuilder.saveAsTemplate.description": "Tworzy nowy szablon content z bieżącego canvasu dla aktywnego języka.",
372
+ "pageBuilder.saveAsTemplate.emptyCanvas": "Dodaj co najmniej jeden komponent przed zapisaniem jako szablon.",
373
+ "pageBuilder.saveAsTemplate.missingScope": "Najpierw wybierz co najmniej jeden kanał sprzedaży i język w Scope.",
374
+ "pageBuilder.saveAsTemplate.requiredFields": "Nazwa i kod są wymagane.",
375
+ "pageBuilder.saveAsTemplate.success": "Szablon zapisany.",
376
+ "pageBuilder.saveAsTemplate.title": "Zapisz układ jako szablon",
377
+ "pageBuilder.colorPalette.title": "Paleta kolorów",
378
+ "pageBuilder.colorPalette.description": "Globalne kolory dostępne w polach Page Buildera.",
379
+ "pageBuilder.colorPalette.close": "Zamknij",
380
+ "pageBuilder.colorPalette.empty": "Brak zapisanych kolorów.",
381
+ "pageBuilder.colorPalette.delete": "Usuń",
382
+ "pageBuilder.colorPalette.deleteConfirm": "Usunąć ten kolor z palety?",
383
+ "pageBuilder.colorPalette.addTitle": "Dodaj kolor",
384
+ "pageBuilder.colorPalette.nameLabel": "Nazwa",
385
+ "pageBuilder.colorPalette.namePlaceholder": "np. Niebieski marki",
386
+ "pageBuilder.colorPalette.colorLabel": "Kolor",
387
+ "pageBuilder.colorPalette.customColor": "Kolor własny",
388
+ "pageBuilder.colorPalette.add": "Dodaj do palety",
389
+ "pageBuilder.colorPalette.pickHint": "Kliknij kolor, aby zastosować go w polu.",
390
+ "pageBuilder.colorPalette.nameRequired": "Podaj nazwę koloru.",
391
+ "pageBuilder.colorPalette.invalidHex": "Podaj poprawny kolor hex (#RRGGBB).",
392
+ "productPicker.searchPlaceholder": "Szukaj produktów po nazwie, SKU lub slugu…",
393
+ "productPicker.searching": "Szukanie…",
394
+ "productPicker.empty": "Brak pasujących produktów.",
395
+ "productPicker.searchFailed": "Wyszukiwanie nie powiodło się.",
396
+ "productPicker.remove": "Usuń {label}",
397
+ "countrySelect.empty": "Brak pasującego kraju",
398
+ "countrySelect.error": "Nie udało się wczytać krajów",
399
+ "countrySelect.loading": "Wczytywanie krajów…",
400
+ "countrySelect.placeholder": "Wybierz kraj…",
401
+ "creditLimits.action.grant": "Przyznaj",
402
+ "creditLimits.action.lookup": "Wyszukaj",
403
+ "creditLimits.action.open": "Otwórz",
404
+ "creditLimits.action.saveAdjust": "Zapisz korektę",
405
+ "creditLimits.adjust.summary": "Przyznano {granted} · Dostępne {available} · Zarezerwowane {reserved} w {count} zamówieniu/-ach.",
406
+ "creditLimits.adjust.title": "Koryguj {orgId} ({currency})",
407
+ "creditLimits.column.available": "Dostępne",
408
+ "creditLimits.column.granted": "Przyznano",
409
+ "creditLimits.column.grantedAt": "Przyznano w dn.",
410
+ "creditLimits.column.order": "Zamówienie",
411
+ "creditLimits.column.organization": "Organizacja",
412
+ "creditLimits.column.reservations": "Rezerwacje",
413
+ "creditLimits.column.reserved": "Zarezerwowane",
414
+ "creditLimits.column.since": "Od",
415
+ "creditLimits.editor.title": "Edytor per-organizacja",
416
+ "creditLimits.empty": "Nie przyznano jeszcze żadnego limitu kredytowego.",
417
+ "creditLimits.error.adjust": "Korekta nie powiodła się.",
418
+ "creditLimits.error.grant": "Przyznanie nie powiodło się.",
419
+ "creditLimits.error.load": "Nie udało się załadować.",
420
+ "creditLimits.error.lookup": "Wyszukiwanie nie powiodło się.",
421
+ "creditLimits.field.allowOverAllocation": "Zezwól na zmniejszenie poniżej aktywnych rezerwacji (nadpisanie)",
422
+ "creditLimits.field.currency": "Waluta",
423
+ "creditLimits.field.grantedAmount": "Kwota przyznana",
424
+ "creditLimits.field.newGranted": "Nowa kwota przyznana ({currency})",
425
+ "creditLimits.field.orgId": "Identyfikator organizacji",
426
+ "creditLimits.field.reasonAudit": "Powód (opcjonalnie, pozostaje w dzienniku audytu)",
427
+ "creditLimits.field.reasonOptional": "Powód (opcjonalnie)",
428
+ "creditLimits.grant.notGrantedYet": "Tej organizacji nie przyznano jeszcze limitu kredytowego.",
429
+ "creditLimits.grant.title": "Przyznaj limit kredytowy dla {orgId}",
430
+ "creditLimits.loading": "Ładowanie…",
431
+ "creditLimits.page.description": "Przyznawaj i koryguj limity płatności odroczonej dla każdej organizacji. Korekty poniżej sumy aktywnych rezerwacji są odrzucane, chyba że zostały jawnie nadpisane.",
432
+ "creditLimits.page.title": "Limity kredytowe",
433
+ "creditLimits.placeholder.uuid": "UUID",
434
+ "creditLimits.success.adjust": "Skorygowano limit kredytowy dla {orgId}.",
435
+ "creditLimits.success.grant": "Przyznano {amount} {currency} dla {orgId}.",
436
+ "customFields.save": "Zapisz pola niestandardowe",
437
+ "customFields.title": "Pola niestandardowe",
438
+ "defaultPreferences.billingAddress": "Domyślny adres rozliczeniowy",
439
+ "defaultPreferences.deliveryMethod": "Domyślna metoda dostawy",
440
+ "defaultPreferences.description": "Domyślna metoda płatności / dostawy oraz adres rozliczeniowy / wysyłki stosowane przy składaniu zamówienia. Pozostaw pole puste, aby nie ustawiać wartości domyślnej.",
441
+ "defaultPreferences.inherit": "— Dziedzicz z organizacji —",
442
+ "defaultPreferences.loadError": "Nie udało się wczytać preferencji.",
443
+ "defaultPreferences.none": "— Brak —",
444
+ "defaultPreferences.paymentMethod": "Domyślna metoda płatności",
445
+ "defaultPreferences.save": "Zapisz preferencje",
446
+ "defaultPreferences.saveError": "Nie udało się zapisać preferencji.",
447
+ "defaultPreferences.saved": "Preferencje zapisane.",
448
+ "defaultPreferences.shippingAddress": "Domyślny adres wysyłki",
449
+ "defaultPreferences.title": "Domyślne preferencje zamówień",
450
+ "errors.CURRENT_PASSWORD_INVALID": "Błąd: current password invalid.",
451
+ "errors.EMAIL_ALREADY_REGISTERED": "Błąd: email already registered.",
452
+ "errors.FORBIDDEN": "Nie masz uprawnień do wykonania tej akcji.",
453
+ "errors.FORBIDDEN.organization_cannot_transact": "Twoja organizacja nie może składać zamówień w obecnym statusie. Skontaktuj się ze swoim opiekunem konta, aby przywrócić możliwość zamawiania.",
454
+ "errors.FORBIDDEN.customer_outside_assignment_scope": "Możesz tworzyć i wyceniać zamówienia wyłącznie dla klientów z przypisanych do Ciebie organizacji.",
455
+ "errors.INTERNAL": "Wewnętrzny błąd serwera.",
456
+ "errors.INVALID_CREDENTIALS": "Nieprawidłowy e-mail lub hasło. Spróbuj ponownie.",
457
+ "errors.INVALID_TRANSITION": "Ta zmiana statusu jest niedozwolona.",
458
+ "errors.MODULE_DISABLED": "Moduł \"{module}\" jest wyłączony, więc ta operacja została odrzucona. Sprawdź jego stan na ekranie Moduły.",
459
+ "errors.NOT_FOUND": "Nie znaleziono zasobu.",
460
+ "errors.RATE_LIMITED": "Za dużo żądań.",
461
+ "errors.TERMS_VERSION_STALE": "Błąd: terms version stale.",
462
+ "errors.TOKEN_INVALID_OR_EXPIRED": "Błąd: token invalid or expired.",
463
+ "errors.UNAUTHORIZED": "Wymagane jest uwierzytelnienie.",
464
+ "errors.VALIDATION_FAILED": "Żądanie nie przeszło walidacji.",
465
+ "errors.VERSION_CONFLICT": "Zasób został zmieniony przez inny proces.",
466
+ "form.unsavedChanges.confirm": "Masz niezapisane zmiany. Opuścić tę stronę bez zapisywania?",
467
+ "fulfilment.hint": "Jak wybierane są magazyny do realizacji pozycji zamówienia. Pierwszeństwo: produkt → organizacja → kanał sprzedaży → domyślna platformy.",
468
+ "fulfilment.inherit": "Dziedzicz (kanał / domyślna)",
469
+ "fulfilment.label": "Strategia pobierania z magazynów",
470
+ "fulfilment.orgTitle": "Strategia realizacji",
471
+ "fulfilment.save": "Zapisz",
472
+ "fulfilment.saveError": "Nie udało się zapisać strategii realizacji.",
473
+ "fulfilment.saving": "Zapisywanie…",
474
+ "fulfilment.strategy.any": "Dowolny magazyn",
475
+ "fulfilment.strategy.default_first": "Najpierw domyślny magazyn, potem dowolny",
476
+ "fulfilment.strategy.defined_order": "Zdefiniowana kolejność",
477
+ "fulfilment.strategy.highest_stock_first": "Magazyn z największym stanem",
478
+ "fulfilment.strategy.lowest_stock_first": "Magazyn z najmniejszym stanem",
479
+ "fulfilment.warehouseOrder.add": "Dodaj magazyn…",
480
+ "fulfilment.warehouseOrder.down": "Przesuń w dół",
481
+ "fulfilment.warehouseOrder.empty": "Nie dodano jeszcze magazynów.",
482
+ "fulfilment.warehouseOrder.remove": "Usuń",
483
+ "fulfilment.warehouseOrder.title": "Kolejność magazynów",
484
+ "fulfilment.warehouseOrder.up": "Przesuń w górę",
485
+ "home.activity.empty": "Brak najnowszej aktywności — Twoje zmiany pojawią się tutaj.",
486
+ "home.activity.error": "Nie udało się wczytać najnowszej aktywności.",
487
+ "home.activity.retry": "Spróbuj ponownie",
488
+ "home.activity.time.daysAgo": "{count} dni temu",
489
+ "home.activity.time.hoursAgo": "{count} godz. temu",
490
+ "home.activity.time.justNow": "przed chwilą",
491
+ "home.activity.time.minutesAgo": "{count} min temu",
492
+ "home.activity.time.yesterday": "wczoraj",
493
+ "home.activity.verb.unknown": "wykonał(a) operację na",
494
+ "home.activity.viewAll": "Pokaż wszystkie",
495
+ "home.defaultName": "użytkowniku",
496
+ "home.kpi.activeProducts": "Aktywne produkty",
497
+ "home.kpi.openOrders": "Otwarte zamówienia",
498
+ "home.kpi.outOfStock": "Brak na stanie",
499
+ "home.kpi.pendingQuotes": "Oczekujące zapytania",
500
+ "home.quickActions.convertQuote": "Konwertuj zapytanie na zamówienie",
501
+ "home.quickActions.editPricing": "Edytuj ceny",
502
+ "home.quickActions.importInventory": "Importuj stany magazynowe",
503
+ "home.quickActions.newProduct": "Nowy produkt",
504
+ "home.quickActions.title": "Szybkie akcje",
505
+ "home.recentActivity.subtitle": "W katalogu, cennikach i magazynie",
506
+ "home.recentActivity.title": "Ostatnia aktywność",
507
+ "home.stockAlerts.empty": "Żaden produkt nie ma obecnie niskiego stanu magazynowego.",
508
+ "home.stockAlerts.left": "pozostało {qty}",
509
+ "home.stockAlerts.out": "Brak",
510
+ "home.stockAlerts.seeAll": "Zobacz wszystkie",
511
+ "home.stockAlerts.subtitle": "Na lub poniżej progu niskiego stanu",
512
+ "home.stockAlerts.title": "Alerty magazynowe",
513
+ "home.subtitle": "Oto, co dziś dzieje się w Twoim katalogu B2B",
514
+ "home.welcomeBack": "Witaj ponownie",
515
+ "inventory.action.editStock": "Edytuj stan",
516
+ "inventory.action.import": "Importuj stany",
517
+ "inventory.availability.cancel": "Anuluj",
518
+ "inventory.availability.column.email": "E-mail",
519
+ "inventory.availability.column.notified": "Powiadomiono",
520
+ "inventory.availability.column.queued": "W kolejce",
521
+ "inventory.availability.column.status": "Status",
522
+ "inventory.availability.confirmCancel": "Anulować tę subskrypcję? Klient nie otrzyma powiadomienia o powrocie produktu na stan.",
523
+ "inventory.availability.description": "Subskrypcje klientów na powiadomienia o powrocie produktu na stan. Wysyłka uruchamia się automatycznie, gdy łączny stan przejdzie z 0 → > 0.",
524
+ "inventory.availability.empty": "Brak subskrypcji pasujących do bieżących filtrów",
525
+ "inventory.availability.error.cancel": "Anulowanie nie powiodło się.",
526
+ "inventory.availability.error.load": "Nie udało się załadować.",
527
+ "inventory.availability.info.cancelled": "Subskrypcja anulowana.",
528
+ "inventory.availability.searchPlaceholder": "Szukaj SKU, produktu lub e-maila…",
529
+ "inventory.availability.status.all": "wszystkie",
530
+ "inventory.availability.status.cancelled": "anulowane",
531
+ "inventory.availability.status.notified": "powiadomione",
532
+ "inventory.availability.status.queued": "w kolejce",
533
+ "inventory.availability.title": "Powiadom-gdy-dostępne",
534
+ "inventory.column.cumulativeOnHand": "Łączny stan",
535
+ "inventory.column.displayBand": "Pasmo wyświetlania",
536
+ "inventory.column.perWarehouse": "Per magazyn",
537
+ "inventory.column.product": "Produkt",
538
+ "inventory.column.sku": "SKU",
539
+ "inventory.column.threshold": "Próg",
540
+ "inventory.empty": "Brak pozycji stanu magazynowego pasujących do filtrów",
541
+ "inventory.error.load": "Nie udało się załadować.",
542
+ "inventory.import.applied": "Zastosowanych",
543
+ "inventory.import.back": "Powrót do Magazynu",
544
+ "inventory.import.commit": "Zatwierdź",
545
+ "inventory.import.committed": "Zatwierdzono",
546
+ "inventory.import.dryRunSummary": "Podsumowanie próby",
547
+ "inventory.import.error.import": "Import nie powiódł się.",
548
+ "inventory.import.error.loadWarehouses": "Nie udało się załadować magazynów.",
549
+ "inventory.import.errors.reason": "Powód",
550
+ "inventory.import.errors.row": "Wiersz",
551
+ "inventory.import.errors.sku": "SKU",
552
+ "inventory.import.errorsCount": "Błędy ({count}):",
553
+ "inventory.import.errorsTruncated": "Pokazano pierwsze 50 błędów z {total}.",
554
+ "inventory.import.loadedPrefix": "Załadowano",
555
+ "inventory.import.loadedSuffix": "({count} linii).",
556
+ "inventory.import.pasteDirectly": "Lub wklej CSV bezpośrednio:",
557
+ "inventory.import.previewDryRun": "Podgląd (próba bez zapisu)",
558
+ "inventory.import.rowsRead": "Wierszy odczytanych",
559
+ "inventory.import.skipped": "Pominiętych",
560
+ "inventory.import.step1": "1 · Wybierz magazyn",
561
+ "inventory.import.step2": "2 · Dostarcz plik",
562
+ "inventory.import.step3": "3 · Podgląd + commit",
563
+ "inventory.import.subPrefix": "CSV z nagłówkiem",
564
+ "inventory.import.subSuffix": ". Najpierw podgląd, potem commit.",
565
+ "inventory.import.title": "Importuj stany",
566
+ "inventory.import.working": "Pracuję…",
567
+ "inventory.loading": "Ładowanie…",
568
+ "inventory.lowStock.description": "Produkty, których łączny stan jest na poziomie progu lub poniżej. Konfiguruj progi per produkt lub globalnie w ustawieniach magazynu.",
569
+ "inventory.lowStock.empty": "Brak produktów z niskim stanem magazynowym",
570
+ "inventory.lowStock.emptyHintPrefix": "Ustaw",
571
+ "inventory.lowStock.emptyHintSuffix": "na produkcie (zakładka Magazyn), aby pojawił się tutaj po przekroczeniu progu.",
572
+ "inventory.lowStock.error.load": "Nie udało się załadować.",
573
+ "inventory.lowStock.title": "Niski stan",
574
+ "inventory.page.subPrefix": "Stany per produkt per magazyn · KPI obliczane są na żywo z",
575
+ "inventory.page.subSuffix": ".",
576
+ "inventory.noPermission": "Nie masz uprawnień do przeglądania stanów magazynowych i magazynów.",
577
+ "inventory.page.title": "Magazyn",
578
+ "inventory.perWarehouseTotals": "Sumy per magazyn",
579
+ "inventory.search.placeholder": "Szukaj SKU, nazwy produktu lub ID…",
580
+ "inventory.stat.lowStock": "Niski stan",
581
+ "inventory.stat.outOfStock": "Brak na stanie",
582
+ "inventory.stat.totalOnHand": "Suma stanów",
583
+ "inventory.stat.tracked": "Śledzonych produktów",
584
+ "invoiceDetail.action.downloadPdf": "Pobierz PDF",
585
+ "invoiceDetail.action.regeneratePdf": "Wygeneruj PDF ponownie",
586
+ "invoiceDetail.action.resendEmail": "Wyślij e-mail ponownie",
587
+ "invoiceDetail.back": "Faktury",
588
+ "invoiceDetail.col.gross": "Brutto",
589
+ "invoiceDetail.col.name": "Nazwa",
590
+ "invoiceDetail.col.net": "Netto",
591
+ "invoiceDetail.col.no": "Lp.",
592
+ "invoiceDetail.col.qty": "Ilość",
593
+ "invoiceDetail.col.taxRate": "VAT",
594
+ "invoiceDetail.col.unit": "J.m.",
595
+ "invoiceDetail.col.unitNet": "Cena netto",
596
+ "invoiceDetail.error.load": "Nie udało się wczytać faktury.",
597
+ "invoiceDetail.field.issuedAt": "Data wystawienia",
598
+ "invoiceDetail.field.kind": "Rodzaj",
599
+ "invoiceDetail.field.ksefNumber": "Numer w KSeF",
600
+ "invoiceDetail.field.order": "Zamówienie",
601
+ "invoiceDetail.field.paymentDueDate": "Termin płatności",
602
+ "invoiceDetail.field.paymentMethod": "Metoda płatności",
603
+ "invoiceDetail.field.saleDate": "Data sprzedaży",
604
+ "invoiceDetail.field.status": "Status",
605
+ "invoiceDetail.field.taxId": "NIP",
606
+ "invoiceDetail.notFound": "Nie znaleziono faktury.",
607
+ "invoiceDetail.pdfNotReady": "Plik PDF nie jest jeszcze gotowy. Wygeneruj go ponownie, aby umożliwić pobranie.",
608
+ "invoiceDetail.regenerateError": "Nie udało się ponownie wygenerować pliku PDF.",
609
+ "invoiceDetail.regenerated": "Plik PDF faktury wygenerowany ponownie.",
610
+ "invoiceDetail.section.buyer": "Nabywca",
611
+ "invoiceDetail.section.details": "Szczegóły",
612
+ "invoiceDetail.section.lines": "Pozycje",
613
+ "invoiceDetail.section.parties": "Strony",
614
+ "invoiceDetail.section.seller": "Sprzedawca",
615
+ "invoiceDetail.section.totals": "Podsumowanie",
616
+ "invoiceDetail.section.vatSummary": "Podsumowanie VAT",
617
+ "invoiceDetail.title": "Faktura {number}",
618
+ "invoiceDetail.totals.due": "Do zapłaty",
619
+ "invoiceDetail.totals.gross": "Razem brutto",
620
+ "invoiceDetail.totals.net": "Razem netto",
621
+ "invoiceDetail.totals.paid": "Zapłacono",
622
+ "invoiceDetail.totals.tax": "Razem VAT",
623
+ "invoiceTabs.invoices": "Faktury",
624
+ "invoiceTabs.templates": "Szablony faktur",
625
+ "invoiceTemplates.active": "aktywny",
626
+ "invoiceTemplates.clearCanvas": "Wyczyść canvas",
627
+ "invoiceTemplates.columns.active": "Aktywny",
628
+ "invoiceTemplates.columns.name": "Nazwa",
629
+ "invoiceTemplates.columns.scope": "Zakres",
630
+ "invoiceTemplates.create": "Utwórz szablon",
631
+ "invoiceTemplates.description": "Dostosuj wygląd PDF faktury (WYSIWYG), globalnie lub per kanał sprzedaży.",
632
+ "invoiceTemplates.describedBlock.placeholder": "Ten blok należy do modułu {owner}, który nie jest dostępny w tej instancji. Blok pozostaje w szablonie i nie jest drukowany.",
633
+ "invoiceTemplates.describedBlock.placeholderNoOwner": "Ten blok ({name}) nie jest dostępny w tej instancji. Pozostaje w szablonie i nie jest drukowany.",
634
+ "invoiceTemplates.describedBlock.standIn": "Blok {label} jest rysowany na PDF przez moduł {owner}. Użyj podglądu PDF, aby go zobaczyć.",
635
+ "invoiceTemplates.editDescription": "Ułóż sekcje faktury; podgląd renderuje przykładową fakturę.",
636
+ "invoiceTemplates.editTitle": "Szablon faktury",
637
+ "invoiceTemplates.fields.channel": "ID kanału sprzedaży",
638
+ "invoiceTemplates.fields.channelHint": "puste = globalny",
639
+ "invoiceTemplates.fields.code": "Kod",
640
+ "invoiceTemplates.fields.name": "Nazwa",
641
+ "invoiceTemplates.fullscreen.enter": "Pełny ekran",
642
+ "invoiceTemplates.fullscreen.exit": "Zamknij pełny ekran",
643
+ "invoiceTemplates.global": "Globalny",
644
+ "invoiceTemplates.loading": "Wczytywanie szablonu…",
645
+ "invoiceTemplates.preview": "Podgląd PDF",
646
+ "invoiceTemplates.previewEmpty": "Podgląd nie jest jeszcze dostępny.",
647
+ "invoiceTemplates.previewError": "Nie udało się załadować podglądu.",
648
+ "invoiceTemplates.previewLoading": "Generowanie podglądu…",
649
+ "invoiceTemplates.previewRefresh": "Odśwież podgląd",
650
+ "invoiceTemplates.previewTitle": "Podgląd aktualnego szablonu",
651
+ "invoiceTemplates.saved": "Zapisano szablon.",
652
+ "invoiceTemplates.title": "Szablony faktur",
653
+ "invoices.columns.issued": "Wystawiono",
654
+ "invoices.columns.kind": "Typ",
655
+ "invoices.columns.number": "Numer",
656
+ "invoices.columns.order": "Zamówienie",
657
+ "invoices.columns.status": "Status",
658
+ "invoices.columns.total": "Suma",
659
+ "invoices.description": "Tylko do odczytu. Generowanie wynika ze zdarzeń zamówień; ponowne pobranie PDF jest dostępne z zamówienia.",
660
+ "invoices.emailNotSent.deactivated": "wysyłka faktury mailem jest wyłączona",
661
+ "invoices.emailNotSent.failed": "wysyłka nie powiodła się",
662
+ "invoices.emailNotSent.invoice_not_found": "nie udało się wczytać faktury",
663
+ "invoices.emailNotSent.no_definition": "brak szablonu maila z fakturą",
664
+ "invoices.emailNotSent.no_recipient": "zamówienie nie ma adresu e-mail",
665
+ "invoices.emailNotSent.no_sender": "nie skonfigurowano nadawcy maili",
666
+ "invoices.emailNotSent.no_transport": "nie skonfigurowano serwera pocztowego",
667
+ "invoices.emailNotSentNotice": "Nie wysłano maila z fakturą: {reason}.",
668
+ "invoices.emailSent": "Wysłano fakturę mailem.",
669
+ "invoices.empty": "Brak faktur pasujących do bieżącego filtra.",
670
+ "invoices.fields.issuedFrom": "Wystawiono od",
671
+ "invoices.fields.issuedTo": "Wystawiono do",
672
+ "invoices.fields.kind": "Rodzaj",
673
+ "invoices.fields.orderNumber": "Numer zamówienia",
674
+ "invoices.fields.status": "Status",
675
+ "invoices.fields.totalMax": "Suma do",
676
+ "invoices.fields.totalMin": "Suma od",
677
+ "invoices.filters.clear": "Wyczyść filtry",
678
+ "invoices.filters.orderNumberPlaceholder": "np. ORD-2026-…",
679
+ "invoices.kind.all": "Wszystkie",
680
+ "invoices.kind.correction": "korekta",
681
+ "invoices.kind.invoice": "faktura",
682
+ "invoices.kind.proforma": "proforma",
683
+ "invoices.pdfNotReady": "nie gotowe",
684
+ "invoices.resendEmail": "Wyślij ponownie mailem",
685
+ "invoices.status.all": "Wszystkie",
686
+ "invoices.status.cancelled": "anulowana",
687
+ "invoices.status.pending": "oczekująca",
688
+ "invoices.status.ready": "gotowa",
689
+ "invoices.title": "Faktury",
690
+ "legacyMethods.action.new": "Dodaj metodę",
691
+ "legacyMethods.availability.moduleOff": "Moduł \"{module}\" jest wyłączony.",
692
+ "legacyMethods.availability.moduleUnavailable": "Moduł \"{module}\" nie jest dostępny w tej instalacji.",
693
+ "legacyMethods.availability.noAdapter": "Żaden moduł nie dostarcza adaptera \"{adapter}\".",
694
+ "legacyMethods.availability.unavailable": "Niedostępna dla kupujących",
695
+ "legacyMethods.columns.adapter": "Adapter",
696
+ "legacyMethods.columns.code": "Kod",
697
+ "legacyMethods.columns.cost": "Koszt",
698
+ "legacyMethods.columns.kind": "Typ",
699
+ "legacyMethods.columns.name": "Nazwa",
700
+ "legacyMethods.columns.status": "Status",
701
+ "legacyMethods.delivery.deleteConfirm": "Usunąć tę metodę dostawy?",
702
+ "legacyMethods.delivery.description": "Koszt jest zapisywany przy składaniu zamówienia; późniejsze edycje nie zmieniają historii.",
703
+ "legacyMethods.delivery.editTitle": "Edytuj metodę {code}",
704
+ "legacyMethods.delivery.empty": "Brak metod dostawy.",
705
+ "legacyMethods.delivery.noPermission": "Nie masz uprawnień do przeglądania metod dostawy.",
706
+ "legacyMethods.delivery.title": "Metody dostawy",
707
+ "legacyMethods.editTitle": "Edytuj metodę {code}",
708
+ "legacyMethods.errors.delete": "Usuwanie nie powiodło się.",
709
+ "legacyMethods.errors.save": "Zapis nie powiódł się.",
710
+ "legacyMethods.fields.adapter": "Adapter",
711
+ "legacyMethods.fields.additionalPrice": "Dodatkowa opłata",
712
+ "legacyMethods.fields.code": "Kod",
713
+ "legacyMethods.fields.cost": "Koszt",
714
+ "legacyMethods.fields.currency": "Waluta",
715
+ "legacyMethods.fields.kind": "Typ",
716
+ "legacyMethods.fields.nameEn": "Nazwa [en-US]",
717
+ "legacyMethods.fields.namePl": "Nazwa [pl-PL]",
718
+ "legacyMethods.fields.status": "Status",
719
+ "legacyMethods.fields.statusOnFailure": "Status zamówienia — płatność nieudana",
720
+ "legacyMethods.fields.statusOnPending": "Status zamówienia — oczekiwanie na płatność",
721
+ "legacyMethods.fields.statusOnSuccess": "Status zamówienia — płatność udana",
722
+ "legacyMethods.formTitle": "Nowa / aktualizacja metody",
723
+ "legacyMethods.integrations.configure": "Konfiguruj",
724
+ "legacyMethods.integrations.description": "Zainstalowane integracje płatności. Otwórz, aby skonfigurować.",
725
+ "legacyMethods.integrations.shippingDescription": "Zainstalowane integracje wysyłki. Otwórz, aby skonfigurować.",
726
+ "legacyMethods.integrations.title": "Integracje",
727
+ "legacyMethods.messages.saved": "Zapisano {code}.",
728
+ "legacyMethods.payment.deleteConfirm": "Usunąć tę metodę płatności?",
729
+ "legacyMethods.payment.description": "Typ wybiera sterownik backendu; adaptery bramek pojawią się w kolejnych specyfikacjach.",
730
+ "legacyMethods.payment.empty": "Brak metod płatności.",
731
+ "legacyMethods.payment.kind.bank_transfer": "przelew bankowy",
732
+ "legacyMethods.payment.kind.credit_limit": "limit kredytowy",
733
+ "legacyMethods.payment.kind.gateway": "bramka",
734
+ "legacyMethods.payment.kind.pickup": "odbiór",
735
+ "legacyMethods.payment.noPermission": "Nie masz uprawnień do przeglądania metod płatności.",
736
+ "legacyMethods.payment.title": "Metody płatności",
737
+ "legacyMethods.status.active": "aktywna",
738
+ "legacyMethods.status.inactive": "nieaktywna",
739
+ "limits.global": "Limit globalny",
740
+ "limits.perCustomer": "Na klienta",
741
+ "limits.perOrganization": "Na organizację",
742
+ "loginPage.email.label": "Adres e-mail",
743
+ "loginPage.email.placeholder": "ty@firma.pl",
744
+ "loginPage.error.generic": "Logowanie nie powiodło się. Spróbuj ponownie.",
745
+ "loginPage.error.invalid": "Nieprawidłowy e-mail lub hasło.",
746
+ "loginPage.footer.noAccount.prefix": "Nie masz jeszcze konta? Uruchom",
747
+ "loginPage.footer.noAccount.suffix": "w katalogu głównym repozytorium.",
748
+ "loginPage.heading": "Admin B2B · logowanie",
749
+ "loginPage.password.label": "Hasło",
750
+ "loginPage.password.placeholder": "Twoje hasło",
751
+ "loginPage.subheading": "Użyj adresu e-mail i hasła wydanych przez administratora platformy.",
752
+ "loginPage.submit": "Zaloguj",
753
+ "loginPage.submitting": "Logowanie…",
754
+ "loginPage.title": "Zaloguj się do panelu administracyjnego",
755
+ "orderCreate.addItem": "Dodaj pozycję",
756
+ "orderCreate.address.billingHeading": "Adres rozliczeniowy",
757
+ "orderCreate.address.copyFromBilling": "Skopiuj z adresu rozliczeniowego",
758
+ "orderCreate.address.copyFromDelivery": "Skopiuj z adresu dostawy",
759
+ "orderCreate.address.deliveryHeading": "Adres dostawy",
760
+ "orderCreate.address.field.city": "Miasto",
761
+ "orderCreate.address.field.country": "Kraj",
762
+ "orderCreate.address.field.phone": "Telefon",
763
+ "orderCreate.address.field.postalCode": "Kod pocztowy",
764
+ "orderCreate.address.field.recipientName": "Odbiorca",
765
+ "orderCreate.address.field.street": "Ulica",
766
+ "orderCreate.address.group.organization": "Organizacja",
767
+ "orderCreate.address.group.personal": "Osobisty",
768
+ "orderCreate.address.mode.existing": "Wybierz istniejący",
769
+ "orderCreate.address.mode.new": "Wprowadź nowy",
770
+ "orderCreate.address.none": "Ten klient nie ma zapisanych adresów",
771
+ "orderCreate.address.saveToBook": "Zapisz w książce adresowej do ponownego użycia",
772
+ "orderCreate.address.selectCustomerFirst": "Najpierw wybierz klienta",
773
+ "orderCreate.description": "Utwórz zamówienie w imieniu klienta",
774
+ "orderCreate.empty.customers": "Brak pasujących klientów",
775
+ "orderCreate.empty.options": "Brak wyników",
776
+ "orderCreate.error": "Nie udało się utworzyć zamówienia",
777
+ "orderCreate.field.billingAddress": "Adres rozliczeniowy",
778
+ "orderCreate.field.customer": "Klient",
779
+ "orderCreate.field.deliveryAddress": "Adres dostawy",
780
+ "orderCreate.field.deliveryMethod": "Metoda dostawy",
781
+ "orderCreate.field.note": "Notatka klienta",
782
+ "orderCreate.field.paymentMethod": "Metoda płatności",
783
+ "orderCreate.field.product": "Produkt",
784
+ "orderCreate.field.quantity": "Ilość",
785
+ "orderCreate.field.salesChannel": "Kanał sprzedaży",
786
+ "orderCreate.line.lineTotal": "Wartość",
787
+ "orderCreate.line.unavailable": "Brak ceny",
788
+ "orderCreate.line.unitPrice": "Cena jedn.",
789
+ "orderCreate.loadError": "Nie udało się wczytać opcji",
790
+ "orderCreate.loading": "Wczytywanie…",
791
+ "orderCreate.notice.unavailableLines": "Niektóre produkty nie mają ceny dla tego klienta i kanału sprzedaży i są wyłączone z sumy. Usuń je lub zmień konfigurację przed utworzeniem zamówienia.",
792
+ "orderCreate.placeholder.address": "Wybierz adres…",
793
+ "orderCreate.placeholder.customer": "Szukaj po nazwisku lub e-mailu…",
794
+ "orderCreate.placeholder.product": "Szukaj po nazwie, SKU lub slugu…",
795
+ "orderCreate.placeholder.select": "Wybierz…",
796
+ "orderCreate.preview.error": "Nie udało się przeliczyć cen",
797
+ "orderCreate.section.items": "Pozycje",
798
+ "orderCreate.section.parties": "Klient i metody",
799
+ "orderCreate.submit": "Utwórz zamówienie",
800
+ "orderCreate.summary.delivery": "Dostawa",
801
+ "orderCreate.summary.discount": "Rabat",
802
+ "orderCreate.summary.paymentSurcharge": "Dopłata za płatność",
803
+ "orderCreate.summary.subtotal": "Suma częściowa",
804
+ "orderCreate.summary.tax": "Podatek (23%)",
805
+ "orderCreate.summary.title": "Podsumowanie zamówienia",
806
+ "orderCreate.summary.total": "Razem",
807
+ "orderCreate.title": "Utwórz zamówienie",
808
+ "orderDetail.cloneToQuote.action": "Skopiuj do zapytania",
809
+ "orderDetail.cloneToQuote.done": "Na podstawie zamówienia utworzono zapytanie ofertowe.",
810
+ "orderDetail.cloneToQuote.error": "Nie udało się skopiować zamówienia do zapytania.",
811
+ "orderDetail.columns.line": "Linia",
812
+ "orderDetail.columns.product": "Produkt",
813
+ "orderDetail.columns.qty": "Ilość",
814
+ "orderDetail.columns.tax": "Podatek",
815
+ "orderDetail.columns.unit": "Jedn.",
816
+ "orderDetail.comments.add": "Dodaj komentarz",
817
+ "orderDetail.comments.byCustomer": "Klient",
818
+ "orderDetail.comments.byStaff": "Personel",
819
+ "orderDetail.comments.customerVisible": "Widoczny dla klienta",
820
+ "orderDetail.comments.empty": "Brak komentarzy.",
821
+ "orderDetail.comments.error": "Nie udało się dodać komentarza.",
822
+ "orderDetail.comments.internal": "Wewnętrzny",
823
+ "orderDetail.comments.notify": "Powiadom klienta",
824
+ "orderDetail.comments.placeholder": "Napisz komentarz…",
825
+ "orderDetail.copied": "Skopiowano numer zamówienia #{id}",
826
+ "orderDetail.copyError": "Nie udało się skopiować numeru zamówienia.",
827
+ "orderDetail.copyHint": "Kliknij, aby skopiować numer zamówienia",
828
+ "orderDetail.deliveryVia": "przez",
829
+ "orderDetail.errors.paymentChange": "Zmiana płatności nie powiodła się.",
830
+ "orderDetail.errors.statusChange": "Zmiana statusu nie powiodła się.",
831
+ "orderDetail.fields.orderStatus": "Status zamówienia",
832
+ "orderDetail.fields.paymentStatus": "Status płatności",
833
+ "orderDetail.invoicePdf": "PDF faktury",
834
+ "orderDetail.invoices.columns.issuedAt": "Wystawiono",
835
+ "orderDetail.invoices.columns.kind": "Typ",
836
+ "orderDetail.invoices.columns.number": "Numer",
837
+ "orderDetail.invoices.columns.status": "Status",
838
+ "orderDetail.invoices.columns.total": "Suma",
839
+ "orderDetail.invoices.download": "Pobierz PDF",
840
+ "orderDetail.invoices.empty": "Brak faktur.",
841
+ "orderDetail.invoices.kind.correction": "Korekta",
842
+ "orderDetail.invoices.kind.invoice": "Faktura",
843
+ "orderDetail.invoices.kind.proforma": "Proforma",
844
+ "orderDetail.invoices.status.cancelled": "anulowana",
845
+ "orderDetail.invoices.status.pending": "oczekująca",
846
+ "orderDetail.invoices.status.ready": "gotowa",
847
+ "orderDetail.invoices.title": "Faktury",
848
+ "orderDetail.issueInvoice.action": "Wystaw fakturę",
849
+ "orderDetail.issueInvoice.done": "Faktura wystawiona.",
850
+ "orderDetail.issueInvoice.doneEmailNotSent": "Faktura wystawiona, ale nie wysłano maila: {reason}.",
851
+ "orderDetail.issueInvoice.doneEmailSent": "Faktura wystawiona i wysłana mailem do klienta.",
852
+ "orderDetail.issueInvoice.error": "Nie udało się wystawić faktury dla tego zamówienia.",
853
+ "orderDetail.messages.orderMoved": "Zamówienie przeniesione do statusu {status}.",
854
+ "orderDetail.messages.paymentMoved": "Płatność przeniesiona do statusu {status}.",
855
+ "orderDetail.notFound": "Nie znaleziono zamówienia.",
856
+ "orderDetail.orderStatus.cancelled": "anulowane",
857
+ "orderDetail.orderStatus.completed": "zakończone",
858
+ "orderDetail.orderStatus.confirmed": "potwierdzone",
859
+ "orderDetail.orderStatus.in_fulfilment": "w realizacji",
860
+ "orderDetail.orderStatus.new": "nowe",
861
+ "orderDetail.orderStatus.shipped": "wysłane",
862
+ "orderDetail.org.taxId": "NIP",
863
+ "orderDetail.org.vat": "Status VAT",
864
+ "orderDetail.paidBy": "opłacone przez",
865
+ "orderDetail.paymentStatus.awaiting_payment": "oczekuje na płatność",
866
+ "orderDetail.paymentStatus.deferred": "odroczona",
867
+ "orderDetail.paymentStatus.failed": "nieudana",
868
+ "orderDetail.paymentStatus.paid": "opłacona",
869
+ "orderDetail.paymentStatus.partially_refunded": "częściowo zwrócona",
870
+ "orderDetail.paymentStatus.refunded": "zwrócona",
871
+ "orderDetail.payments.columns.actionDate": "Data akcji",
872
+ "orderDetail.payments.columns.amount": "Kwota",
873
+ "orderDetail.payments.columns.attempt": "Próba",
874
+ "orderDetail.payments.columns.failure": "Powód niepowodzenia",
875
+ "orderDetail.payments.columns.paidAt": "Opłacono",
876
+ "orderDetail.payments.columns.reference": "Referencja",
877
+ "orderDetail.payments.columns.status": "Status",
878
+ "orderDetail.payments.empty": "Brak płatności.",
879
+ "orderDetail.payments.title": "Płatności",
880
+ "orderDetail.placedAt": "złożono {date}",
881
+ "orderDetail.reorder.action": "Zamów ponownie",
882
+ "orderDetail.reorder.done": "Na podstawie zamówienia utworzono nowy koszyk.",
883
+ "orderDetail.reorder.doneWithSkips": "Utworzono nowy koszyk; {count} pozycji było niedostępnych i je pominięto.",
884
+ "orderDetail.reorder.error": "Nie udało się ponowić zamówienia.",
885
+ "orderDetail.sections.billing": "Rozliczenie",
886
+ "orderDetail.sections.buyerNote": "Notatka od kupującego",
887
+ "orderDetail.sections.comments": "Komentarze",
888
+ "orderDetail.sections.customer": "Klient",
889
+ "orderDetail.sections.delivery": "Dostawa",
890
+ "orderDetail.sections.items": "Pozycje",
891
+ "orderDetail.sections.organization": "Organizacja",
892
+ "orderDetail.sections.status": "Status",
893
+ "orderDetail.shipments.carrierNotContacted.body": "Przesyłka została utworzona, ale moduł obsługujący jej przewoźnika jest wyłączony, więc etykieta, numer śledzenia ani odbiór nigdy nie zostały zamówione. Włącz moduł ponownie i wygeneruj przesyłkę jeszcze raz.",
894
+ "orderDetail.shipments.carrierNotContacted.title": "Przewoźnik nie został powiadomiony",
895
+ "orderDetail.shipments.columns.attempt": "Próba",
896
+ "orderDetail.shipments.columns.createdAt": "Utworzono",
897
+ "orderDetail.shipments.columns.failure": "Powód niepowodzenia",
898
+ "orderDetail.shipments.columns.status": "Status",
899
+ "orderDetail.shipments.columns.tracking": "Numer śledzenia / referencja",
900
+ "orderDetail.shipments.empty": "Brak przesyłek.",
901
+ "orderDetail.shipments.generate": "Wygeneruj przesyłkę",
902
+ "orderDetail.shipments.generate.again": "Wygeneruj przesyłkę ponownie",
903
+ "orderDetail.shipments.generate.busy": "Generowanie…",
904
+ "orderDetail.shipments.generate.error": "Nie udało się wygenerować przesyłki.",
905
+ "orderDetail.shipments.status.failure": "niepowodzenie",
906
+ "orderDetail.shipments.status.pending": "oczekuje",
907
+ "orderDetail.shipments.status.pending_manual": "czeka na człowieka",
908
+ "orderDetail.shipments.status.success": "powodzenie",
909
+ "orderDetail.shipments.title": "Przesyłki",
910
+ "orderDetail.tabs.comments": "Komentarze",
911
+ "orderDetail.tabs.delivery": "Dostawa",
912
+ "orderDetail.tabs.overview": "Przegląd",
913
+ "orderDetail.tabs.payment": "Płatność",
914
+ "orderDetail.taxId": "NIP",
915
+ "orderDetail.title": "Zamówienie #{id}",
916
+ "orderDetail.totals.delivery": "Dostawa",
917
+ "orderDetail.totals.discount": "Rabat",
918
+ "orderDetail.totals.subtotal": "Suma częściowa",
919
+ "orderDetail.totals.tax": "Podatek",
920
+ "orderDetail.totals.total": "Razem",
921
+ "orderDetail.vatStatus.reverse_charge": "Odwrotne obciążenie",
922
+ "orderDetail.vatStatus.vat_exempt": "Zwolniony z VAT",
923
+ "orderDetail.vatStatus.vat_payer": "Płatnik VAT",
924
+ "orderStatusConfig.addStatus": "Dodaj status",
925
+ "orderStatusConfig.addTransition": "Dodaj przejście",
926
+ "orderStatusConfig.col.code": "Kod",
927
+ "orderStatusConfig.col.flags": "Flagi",
928
+ "orderStatusConfig.col.from": "Z",
929
+ "orderStatusConfig.col.inUse": "W użyciu",
930
+ "orderStatusConfig.col.name": "Nazwa",
931
+ "orderStatusConfig.col.to": "Do",
932
+ "orderStatusConfig.color.custom": "Własny kolor",
933
+ "orderStatusConfig.deleteConfirm.body": "Czy na pewno chcesz usunąć status „{name}”? Tej operacji nie można cofnąć.",
934
+ "orderStatusConfig.deleteConfirm.title": "Usunąć status?",
935
+ "orderStatusConfig.description": "Skonfiguruj cykl życia statusów zamówień i dozwolone przejścia",
936
+ "orderStatusConfig.field.color": "Kolor",
937
+ "orderStatusConfig.field.defaultName": "Domyślna nazwa",
938
+ "orderStatusConfig.flag.initial": "Początkowy",
939
+ "orderStatusConfig.flag.system": "Systemowy",
940
+ "orderStatusConfig.flag.terminal": "Końcowy",
941
+ "orderStatusConfig.graph.connectMode": "Połącz",
942
+ "orderStatusConfig.graph.empty": "Brak statusów. Dodaj status, aby rysować przejścia.",
943
+ "orderStatusConfig.graph.layoutCircular": "Kołowy",
944
+ "orderStatusConfig.graph.layoutForce": "Siłowy",
945
+ "orderStatusConfig.graph.layoutNone": "Brak",
946
+ "orderStatusConfig.graph.legendNormal": "Pośredni",
947
+ "orderStatusConfig.graph.pickSource": "Kliknij status źródłowy…",
948
+ "orderStatusConfig.graph.pickTarget": "Źródło: {from} — teraz kliknij status docelowy",
949
+ "orderStatusConfig.graph.removeTransition": "Usuń przejście",
950
+ "orderStatusConfig.graph.selected": "Wybrane przejście",
951
+ "orderStatusConfig.statuses": "Statusy",
952
+ "orderStatusConfig.title": "Statusy zamówień",
953
+ "orderStatusConfig.transitions": "Przejścia",
954
+ "orders.action.exportCsv": "Eksportuj CSV",
955
+ "orders.bulk.apply": "Zastosuj",
956
+ "orders.bulk.changeStatus": "Zmień status",
957
+ "orders.bulk.dialogTitle": "Zmień status dla {count} zamówień",
958
+ "orders.bulk.error": "Nie udało się zmienić statusu",
959
+ "orders.bulk.printInvoices": "Drukuj faktury",
960
+ "orders.bulk.result": "Zmieniono: {changed}, pominięto: {skipped}",
961
+ "orders.bulk.selected": "Zaznaczono: {count}",
962
+ "orders.bulk.targetStatus": "Status docelowy",
963
+ "orders.column.billTo": "Nabywca",
964
+ "orders.column.customer": "Klient",
965
+ "orders.column.deliveryMethod": "Metoda dostawy",
966
+ "orders.column.order": "Zamówienie",
967
+ "orders.column.org": "Organizacja",
968
+ "orders.column.payment": "Płatność",
969
+ "orders.column.paymentMethod": "Metoda płatności",
970
+ "orders.column.placedAt": "Data zakupu",
971
+ "orders.column.salesChannel": "Kanał sprzedaży",
972
+ "orders.column.shipTo": "Odbiorca dostawy",
973
+ "orders.column.status": "Status",
974
+ "orders.column.total": "Razem",
975
+ "orders.columns.label": "Kolumny",
976
+ "orders.empty": "Nie znaleziono zamówień",
977
+ "orders.error.load": "Nie udało się wczytać zamówień",
978
+ "orders.error.print": "Nie udało się wydrukować faktur",
979
+ "orders.field.customerName": "Klient",
980
+ "orders.field.dateFrom": "Od",
981
+ "orders.field.dateTo": "Do",
982
+ "orders.field.deliveryMethod": "Metoda dostawy",
983
+ "orders.field.orgName": "Organizacja",
984
+ "orders.field.paymentMethod": "Metoda płatności",
985
+ "orders.field.paymentStatus": "Status płatności",
986
+ "orders.field.salesChannel": "Kanał sprzedaży",
987
+ "orders.field.search": "Szukaj",
988
+ "orders.field.sort": "Sortuj",
989
+ "orders.field.status": "Status",
990
+ "orders.field.totalMax": "Razem ≤",
991
+ "orders.field.totalMin": "Razem ≥",
992
+ "orders.filter.all": "Wszystkie statusy",
993
+ "orders.filter.clearAll": "Wyczyść wszystko",
994
+ "orders.filter.toggle": "Filtry",
995
+ "orders.loading": "Wczytywanie zamówień…",
996
+ "orders.open": "Otwórz",
997
+ "orders.page.description": "Przeglądaj zamówienia klientów i zarządzaj nimi",
998
+ "orders.page.title": "Zamówienia",
999
+ "orders.search.placeholder": "Numer zamówienia, klient…",
1000
+ "orders.sort.idAsc": "Numer zamówienia",
1001
+ "orders.sort.newest": "Najnowsze",
1002
+ "orders.sort.oldest": "Najstarsze",
1003
+ "orders.sort.totalDesc": "Najwyższa wartość",
1004
+ "orders.views.label": "Zapisane widoki",
1005
+ "orders.views.namePrompt": "Nazwa widoku",
1006
+ "orders.views.none": "— Wybierz widok —",
1007
+ "orders.views.sharedPrompt": "Udostępnić ten widok innym administratorom?",
1008
+ "organizations.action.open": "Otwórz",
1009
+ "organizations.applicablePriceLists.column.name": "Cennik",
1010
+ "organizations.applicablePriceLists.column.priority": "Priorytet",
1011
+ "organizations.applicablePriceLists.column.reasons": "Powody",
1012
+ "organizations.applicablePriceLists.empty": "Żaden Cennik nie obowiązuje jeszcze tej Organizacji.",
1013
+ "organizations.applicablePriceLists.error.load": "Nie udało się wczytać listy Cenników.",
1014
+ "organizations.applicablePriceLists.reason.customer_group_match": "Grupa klientów",
1015
+ "organizations.applicablePriceLists.reason.direct_organization_match": "Bezpośrednio Organizacja",
1016
+ "organizations.applicablePriceLists.reason.sales_channel_inheritance": "Kanał sprzedaży",
1017
+ "organizations.applicablePriceLists.reason.segment_rule_match": "Reguła segmentu",
1018
+ "organizations.applicablePriceLists.title": "Cenniki obowiązujące",
1019
+ "organizations.column.name": "Nazwa",
1020
+ "organizations.column.registered": "Zarejestrowano",
1021
+ "organizations.column.status": "Status",
1022
+ "organizations.column.taxId": "NIP",
1023
+ "organizations.column.vat": "VAT",
1024
+ "organizations.detail.accountStatus": "Status konta",
1025
+ "organizations.detail.actions": "Akcje",
1026
+ "organizations.detail.back": "Wstecz",
1027
+ "organizations.detail.cancel": "Anuluj",
1028
+ "organizations.detail.changeEmailHint": "Zmiana adresu e-mail unieważnia status zweryfikowany do czasu ponownej weryfikacji przez użytkownika.",
1029
+ "organizations.detail.createMember": "Utwórz członka",
1030
+ "organizations.detail.directAddCard": "Dodaj członka bezpośrednio",
1031
+ "organizations.detail.edit": "Edytuj",
1032
+ "organizations.detail.editMember": "Edytuj członka",
1033
+ "organizations.detail.email": "E-mail",
1034
+ "organizations.detail.emailPlaceholder": "wspolpracownik@firma.com",
1035
+ "organizations.detail.error.create": "Utworzenie nie powiodło się.",
1036
+ "organizations.detail.error.invite": "Wysłanie zaproszenia nie powiodło się.",
1037
+ "organizations.detail.error.load": "Nie udało się załadować.",
1038
+ "organizations.detail.error.remove": "Usunięcie nie powiodło się.",
1039
+ "organizations.detail.error.roleUpdate": "Zmiana roli nie powiodła się.",
1040
+ "organizations.detail.error.save": "Zapis nie powiódł się.",
1041
+ "organizations.detail.error.versionConflictMember": "Członek został zmodyfikowany równolegle. Odświeżam…",
1042
+ "organizations.detail.error.versionConflictOrg": "Organizacja została zmodyfikowana w innym miejscu. Odświeżam…",
1043
+ "organizations.detail.firstName": "Imię",
1044
+ "organizations.detail.hierarchyAncestors": "Łańcuch nadrzędny",
1045
+ "organizations.detail.hierarchyCard": "Hierarchia organizacji",
1046
+ "organizations.detail.hierarchyError": "Nie udało się zaktualizować organizacji nadrzędnej.",
1047
+ "organizations.detail.hierarchyNoChildren": "Ta organizacja nie ma organizacji podrzędnych.",
1048
+ "organizations.detail.hierarchyParentHint": "Zagnieźdź tę organizację pod organizacją nadrzędną lub pozostaw puste, aby była organizacją najwyższego poziomu (główną).",
1049
+ "organizations.detail.hierarchyParentLabel": "Organizacja nadrzędna",
1050
+ "organizations.detail.hierarchyRoot": "Ta organizacja jest organizacją najwyższego poziomu (główną).",
1051
+ "organizations.detail.hierarchySaved": "Zaktualizowano organizację nadrzędną.",
1052
+ "organizations.detail.hierarchySubtree": "Organizacje podrzędne",
1053
+ "organizations.detail.info.invited": "Zaproszenie wysłane.",
1054
+ "organizations.detail.info.memberCreated": "Utworzono członka.",
1055
+ "organizations.detail.info.memberRemoved": "Usunięto członka.",
1056
+ "organizations.detail.info.memberUpdated": "Zaktualizowano członka.",
1057
+ "organizations.detail.info.profileSaved": "Zapisano profil członka.",
1058
+ "organizations.detail.info.saved": "Zapisano.",
1059
+ "organizations.detail.inviteCard": "Zaproś członka",
1060
+ "organizations.detail.lastLogin": "Ostatnie logowanie",
1061
+ "organizations.detail.lastName": "Nazwisko",
1062
+ "organizations.detail.membersCard": "Członkowie",
1063
+ "organizations.detail.nameCol": "Imię i nazwisko",
1064
+ "organizations.detail.notFound": "Nie znaleziono organizacji.",
1065
+ "organizations.detail.registeredAddress": "Adres rejestracyjny",
1066
+ "organizations.detail.remove": "Usuń",
1067
+ "organizations.detail.role": "Rola",
1068
+ "organizations.detail.roleForLabel": "Rola dla {email}",
1069
+ "organizations.detail.save": "Zapisz",
1070
+ "organizations.detail.sendInvite": "Wyślij zaproszenie",
1071
+ "organizations.detail.statusCard": "Status",
1072
+ "organizations.detail.taxIdLabel": "NIP",
1073
+ "organizations.detail.tempPassword": "Hasło tymczasowe (≥12 znaków)",
1074
+ "organizations.detail.twoFactor": "2FA",
1075
+ "organizations.detail.twoFactorOn": "wł.",
1076
+ "organizations.detail.updatedLabel": "Zaktualizowano",
1077
+ "organizations.detail.vatStatus": "Status VAT",
1078
+ "organizations.detail.verified": "Zweryfikowano",
1079
+ "organizations.empty": "Żadna organizacja nie pasuje do bieżącego filtra.",
1080
+ "organizations.error.load": "Nie udało się załadować.",
1081
+ "organizations.field.search": "Szukaj (nazwa / NIP)",
1082
+ "organizations.field.status": "Status",
1083
+ "organizations.filter.all": "Wszystkie",
1084
+ "organizations.loading": "Ładowanie…",
1085
+ "organizations.moderation.action.approve": "Zatwierdź",
1086
+ "organizations.moderation.action.block": "Zablokuj",
1087
+ "organizations.moderation.action.reject": "Odrzuć",
1088
+ "organizations.moderation.action.unblock": "Odblokuj",
1089
+ "organizations.moderation.blockedReasonLabel": "Powód zablokowania",
1090
+ "organizations.moderation.error.conflict": "Organizacja zmieniła się od chwili otwarcia tej strony. Odśwież i spróbuj ponownie.",
1091
+ "organizations.moderation.error.reasonRequired": "Powód jest wymagany.",
1092
+ "organizations.moderation.error.unknown": "Akcji nie udało się zrealizować. Spróbuj ponownie.",
1093
+ "organizations.moderation.error.wrongStatus": "Nie można wykonać tej akcji w bieżącym statusie.",
1094
+ "organizations.moderation.modal.approve.confirm": "Zatwierdź",
1095
+ "organizations.moderation.modal.approve.description": "Organizacja stanie się aktywna, a jej członkowie będą mogli składać Zamówienia i Zapytania Ofertowe.",
1096
+ "organizations.moderation.modal.approve.title": "Zatwierdzić Organizację?",
1097
+ "organizations.moderation.modal.block.confirm": "Zablokuj",
1098
+ "organizations.moderation.modal.block.description": "Organizacja straci możliwość składania Zamówień i Zapytań Ofertowych. Możesz dodać wewnętrzny powód widoczny dla operatorów.",
1099
+ "organizations.moderation.modal.block.title": "Zablokować Organizację?",
1100
+ "organizations.moderation.modal.reasonOptional": "Wewnętrzny powód (opcjonalny)",
1101
+ "organizations.moderation.modal.reasonRequired": "Powód (wymagany)",
1102
+ "organizations.moderation.modal.reject.confirm": "Odrzuć",
1103
+ "organizations.moderation.modal.reject.description": "Podaj powód — zostanie on dołączony do wiadomości wysłanej do rejestrującego Klienta.",
1104
+ "organizations.moderation.modal.reject.title": "Odrzucić Organizację?",
1105
+ "organizations.moderation.modal.unblock.confirm": "Odblokuj",
1106
+ "organizations.moderation.modal.unblock.description": "Organizacja ponownie będzie mogła realizować transakcje.",
1107
+ "organizations.moderation.modal.unblock.title": "Odblokować Organizację?",
1108
+ "organizations.moderation.rejectedReasonLabel": "Powód odrzucenia",
1109
+ "organizations.moderation.success.approve": "Organizacja zatwierdzona.",
1110
+ "organizations.moderation.success.block": "Organizacja zablokowana.",
1111
+ "organizations.moderation.success.reject": "Organizacja odrzucona.",
1112
+ "organizations.moderation.success.unblock": "Organizacja odblokowana.",
1113
+ "organizations.moderation.title": "Moderacja",
1114
+ "organizations.page.description": "Organizacje klientów zarejestrowane na platformie.",
1115
+ "organizations.page.title": "Organizacje",
1116
+ "organizations.restrictions.action.save": "Zapisz ograniczenia",
1117
+ "organizations.restrictions.deliveryMethods.title": "Dozwolone metody dostawy",
1118
+ "organizations.restrictions.emptyHint": "Pusta lista ⇒ obowiązują ustawienia domyślne platformy (każda aktywna metoda dostępna w checkoucie).",
1119
+ "organizations.restrictions.error.conflict": "Organizacja zmieniła się od chwili otwarcia tej strony. Odśwież i spróbuj ponownie.",
1120
+ "organizations.restrictions.error.load": "Nie udało się wczytać ograniczeń.",
1121
+ "organizations.restrictions.error.save": "Nie udało się zapisać ograniczeń.",
1122
+ "organizations.restrictions.paymentMethods.title": "Dozwolone metody płatności",
1123
+ "organizations.restrictions.success.save": "Ograniczenia zapisane.",
1124
+ "organizations.restrictions.title": "Dozwolone metody płatności / dostawy / magazyny",
1125
+ "organizations.restrictions.warehouses.title": "Przypisane Magazyny",
1126
+ "organizations.restrictions.warehousesEmptyHint": "Pusta lista ⇒ obowiązują domyślne Magazyny platformy (brak ograniczeń per-Organizacja).",
1127
+ "organizations.salesReps.assign": "Przypisz",
1128
+ "organizations.salesReps.assignLabel": "Przypisz nowego handlowca",
1129
+ "organizations.salesReps.column.assignedAt": "Przypisano",
1130
+ "organizations.salesReps.column.email": "E-mail",
1131
+ "organizations.salesReps.column.name": "Imię i nazwisko",
1132
+ "organizations.salesReps.empty": "Brak przypisanych handlowców. Zapytania ofertowe od tej organizacji są widoczne dla każdego handlowca (fallback dla nieprzypisanych organizacji).",
1133
+ "organizations.salesReps.error.assign": "Przypisanie nie powiodło się.",
1134
+ "organizations.salesReps.error.load": "Nie udało się załadować.",
1135
+ "organizations.salesReps.error.search": "Wyszukiwanie nie powiodło się.",
1136
+ "organizations.salesReps.error.unassign": "Odpięcie nie powiodło się.",
1137
+ "organizations.salesReps.info.assigned": "Przypisano handlowca.",
1138
+ "organizations.salesReps.info.unassigned": "Odpięto handlowca.",
1139
+ "organizations.salesReps.noMatch": "Brak pasującego użytkownika administratora.",
1140
+ "organizations.salesReps.searchPlaceholder": "Szukaj po imieniu lub e-mailu…",
1141
+ "organizations.salesReps.searching": "Wyszukiwanie…",
1142
+ "organizations.salesReps.title": "Handlowcy",
1143
+ "organizations.vatValidation.action.autoFillHint": "Dostępne tylko po udanej weryfikacji zwracającej nazwę prawną.",
1144
+ "organizations.vatValidation.action.validateAndAutoFill": "Weryfikuj + uzupełnij nazwę prawną",
1145
+ "organizations.vatValidation.action.validateNow": "Weryfikuj teraz",
1146
+ "organizations.vatValidation.column.error": "Błąd",
1147
+ "organizations.vatValidation.column.legalName": "Nazwa prawna",
1148
+ "organizations.vatValidation.column.outcome": "Wynik",
1149
+ "organizations.vatValidation.column.provider": "Dostawca",
1150
+ "organizations.vatValidation.column.when": "Kiedy",
1151
+ "organizations.vatValidation.error.load": "Nie udało się wczytać historii weryfikacji.",
1152
+ "organizations.vatValidation.error.trigger": "Nie udało się uruchomić weryfikacji.",
1153
+ "organizations.vatValidation.historyTitle": "Historia weryfikacji",
1154
+ "organizations.vatValidation.lastResult": "Ostatni wynik",
1155
+ "organizations.vatValidation.outcome.deferred": "Odroczono",
1156
+ "organizations.vatValidation.outcome.failed": "Odrzucono",
1157
+ "organizations.vatValidation.outcome.unverified": "Niezweryfikowano",
1158
+ "organizations.vatValidation.outcome.validated": "Zweryfikowano",
1159
+ "organizations.vatValidation.provider.format_only": "Tylko format",
1160
+ "organizations.vatValidation.provider.mf_pl": "Ministerstwo Finansów",
1161
+ "organizations.vatValidation.provider.vies": "VIES",
1162
+ "organizations.vatValidation.success.deferred": "Weryfikacja odroczona — dostawca niedostępny. Spróbuj ponownie później.",
1163
+ "organizations.vatValidation.success.failed": "Weryfikacja zakończona — identyfikator odrzucony.",
1164
+ "organizations.vatValidation.success.unverified": "Weryfikacja zakończona w trybie wyłącznie formatu.",
1165
+ "organizations.vatValidation.success.validated": "Weryfikacja powiodła się.",
1166
+ "organizations.vatValidation.title": "Weryfikacja NIP / VAT",
1167
+ "paymentMethodAvailability.state.active": "Oferowana",
1168
+ "paymentMethodAvailability.state.inactive": "Nieoferowana",
1169
+ "paymentMethodAvailability.manage": "Zarządzaj dostępnością",
1170
+ "paymentMethodAvailability.caption": "To, czy ta metoda jest oferowana kupującym, ustawiasz w Metodach płatności. Reguły poniżej obowiązują zawsze, gdy metoda jest oferowana.",
1171
+ "paymentMethodAvailability.notOffered": "Obecnie nieoferowane kupującym: {codes}. Reguły możesz skonfigurować już teraz — zadziałają, gdy tylko włączysz metodę.",
1172
+ "platform.modules.action.confirmDisable": "Wyłączyć „{name}”? Jego ekrany, API i zadania w tle przestaną działać. Żadne dane ani konfiguracja nie zostaną usunięte, a ponowne włączenie przywróci wszystko.",
1173
+ "platform.modules.action.disable": "Wyłącz",
1174
+ "platform.modules.action.enable": "Włącz",
1175
+ "platform.modules.activation.alwaysOn": "Zawsze włączony",
1176
+ "platform.modules.activation.alwaysOnReason": "Jedyną powierzchnią tego modułu są sondy stanu, które nigdy nie podlegają bramkowaniu — nie ma więc czego wyłączać.",
1177
+ "platform.modules.activation.locked": "Nie można wyłączyć",
1178
+ "platform.modules.activation.off": "Wyłączony",
1179
+ "platform.modules.activation.on": "Włączony",
1180
+ "platform.modules.cliHint": "To, czy moduł jest zainstalowany w tej instalacji, ustawia się narzędziami wdrożeniowymi. Włączenie lub wyłączenie funkcji dla Twojej firmy odbywa się tutaj.",
1181
+ "platform.modules.column.actions": "Akcje",
1182
+ "platform.modules.column.activation": "Twoja firma",
1183
+ "platform.modules.column.flags": "Ostrzeżenia",
1184
+ "platform.modules.column.module": "Moduł",
1185
+ "platform.modules.column.platform": "Instalacja",
1186
+ "platform.modules.column.version": "Wersja",
1187
+ "platform.modules.degraded": "Ta lista może być nieaktualna o kilka sekund — serwer stracił kanał aktualizacji na żywo i odczytuje dane cyklicznie.",
1188
+ "platform.modules.description": "Co udostępnia ta instalacja i co Twoja firma ma włączone.",
1189
+ "platform.modules.empty": "Brak modułów do wyświetlenia.",
1190
+ "platform.modules.error.dependenciesAbsent": "Nie można włączyć „{name}”, dopóki nie działa wszystko, czego ten moduł potrzebuje: {modules}. Najpierw włącz tamte.",
1191
+ "platform.modules.error.dependentsPresent": "Nie można wyłączyć „{name}”, dopóki potrzebują go inne moduły: {modules}. Najpierw wyłącz tamte.",
1192
+ "platform.modules.error.pimConnectorAlreadyActive": "Nie można włączyć „{name}”, dopóki aktywny jest inny connector PIM ({activeModuleId}). Najpierw wyłącz tamten connector.",
1193
+ "platform.modules.error.erpConnectorAlreadyActive": "Nie można włączyć „{name}”, dopóki aktywny jest inny connector ERP ({activeModuleId}). Najpierw wyłącz tamten connector.",
1194
+ "platform.modules.flag.depDisabled": "Zależność wyłączona",
1195
+ "platform.modules.flag.depMissing": "Brak zależności",
1196
+ "platform.modules.flag.orphan": "Brak kodu na dysku",
1197
+ "platform.modules.flag.pendingUpgrade": "Oczekuje na aktualizację",
1198
+ "platform.modules.state.disabled": "Wyłączony w tej instalacji",
1199
+ "platform.modules.state.installed": "Dostępny",
1200
+ "platform.modules.state.installing": "Instalowanie",
1201
+ "platform.modules.state.notInstalled": "Niezainstalowany tutaj",
1202
+ "platform.modules.state.uninstalled": "Usunięty",
1203
+ "platform.modules.title": "Moduły",
1204
+ "platform.modules.versionDrift": "zarejestrowana → na dysku",
1205
+ "priceLists.action.displayModes": "Tryby wyświetlania",
1206
+ "priceLists.action.newPriceList": "Nowy cennik",
1207
+ "priceLists.bracket.addBracket": "Dodaj widełki",
1208
+ "priceLists.bracket.addCurrency": "Dodaj walutę",
1209
+ "priceLists.bracket.column.maxQty": "Max ilość",
1210
+ "priceLists.bracket.column.minQty": "Min ilość",
1211
+ "priceLists.bracket.column.unitPrice": "Cena jednostkowa ({code})",
1212
+ "priceLists.bracket.confirmRemoveCurrency": "Usunąć wszystkie widełki {code} z tego produktu?",
1213
+ "priceLists.bracket.copy.cancel": "Anuluj",
1214
+ "priceLists.bracket.copy.confirmPlural": "Kopiuj do {count} walut",
1215
+ "priceLists.bracket.copy.confirmSingle": "Kopiuj do {count} waluty",
1216
+ "priceLists.bracket.copy.description": "Identyczna kopia po stronie serwera — waluty docelowe otrzymują te same wiersze min/max/kwota co źródło. Cele, które już mają widełki, zostaną zastąpione.",
1217
+ "priceLists.bracket.copy.noOthers": "Brak innych dostępnych walut.",
1218
+ "priceLists.bracket.copy.title": "Kopiuj widełki {source}",
1219
+ "priceLists.bracket.copyFrom": "Kopiuj {code} →",
1220
+ "priceLists.bracket.discard": "Odrzuć",
1221
+ "priceLists.bracket.emptyForCurrency": "Brak widełek dla {code}. Dodaj jedne, aby zacząć cenowanie.",
1222
+ "priceLists.bracket.error.copy": "Kopiowanie nie powiodło się.",
1223
+ "priceLists.bracket.error.save": "Zapis nie powiódł się.",
1224
+ "priceLists.bracket.help": "Dodaj widełki per waluta. Widełki nie mogą się nakładać; ostatni wiersz zazwyczaj nie powinien mieć górnego limitu.",
1225
+ "priceLists.bracket.info.copied": "Skopiowano widełki {source} do {targets}.",
1226
+ "priceLists.bracket.info.saved": "Zapisano.",
1227
+ "priceLists.bracket.noCurrencies": "Brak walut — dodaj jedną, aby zacząć cenowanie.",
1228
+ "priceLists.bracket.removeCurrency": "Usuń {code}",
1229
+ "priceLists.bracket.save": "Zapisz widełki",
1230
+ "priceLists.bracket.saving": "Zapisywanie…",
1231
+ "priceLists.column.activeWindow": "Okno aktywności",
1232
+ "priceLists.column.lastModified": "Ostatnia modyfikacja",
1233
+ "priceLists.column.name": "Nazwa",
1234
+ "priceLists.column.status": "Status",
1235
+ "priceLists.column.type": "Typ",
1236
+ "priceLists.create.cancel": "Anuluj",
1237
+ "priceLists.create.creating": "Tworzenie…",
1238
+ "priceLists.create.description": "Cenniki startują w stanie Szkic. Dodaj produkty, widełki i regułę zastosowania w edytorze; aktywuj, gdy będzie gotowy.",
1239
+ "priceLists.create.endsAt": "Koniec (opcjonalnie)",
1240
+ "priceLists.create.name": "Nazwa",
1241
+ "priceLists.create.nameHelp": "Widoczna dla administratorów; nie eksponowana klientom.",
1242
+ "priceLists.create.namePlaceholder": "Promocja wiosenna 2026",
1243
+ "priceLists.create.startsAt": "Początek (opcjonalnie)",
1244
+ "priceLists.create.submit": "Utwórz cennik",
1245
+ "priceLists.create.title": "Nowy cennik",
1246
+ "priceLists.create.type": "Typ",
1247
+ "priceLists.create.typeBaseOption": "Bazowy — zastępuje cenę katalogową",
1248
+ "priceLists.create.typeSaleOption": "Promocyjny — Cena Specjalna obok ceny bazowej",
1249
+ "priceLists.create.windowHint": "Gdy ustawione jest okno, cennik przechodzi w stan Zaplanowany przy aktywacji i flipuje w Aktywny w startsAt; automatycznie wygasa po endsAt.",
1250
+ "priceLists.detail.activate": "Aktywuj",
1251
+ "priceLists.detail.confirmDelete": "Usunąć ten cennik? Tej operacji nie można cofnąć.",
1252
+ "priceLists.detail.delete": "Usuń",
1253
+ "priceLists.detail.duplicate": "Duplikuj",
1254
+ "priceLists.detail.error.activate": "Aktywacja nie powiodła się.",
1255
+ "priceLists.detail.error.delete": "Usunięcie nie powiodło się.",
1256
+ "priceLists.detail.error.draftify": "Przejście w szkic nie powiodło się.",
1257
+ "priceLists.detail.error.duplicate": "Duplikowanie nie powiodło się.",
1258
+ "priceLists.detail.error.load": "Nie udało się załadować.",
1259
+ "priceLists.detail.error.save": "Zapis nie powiódł się.",
1260
+ "priceLists.detail.field.endsAt": "Koniec",
1261
+ "priceLists.detail.field.name": "Nazwa",
1262
+ "priceLists.detail.field.startsAt": "Początek",
1263
+ "priceLists.detail.field.type": "Typ",
1264
+ "priceLists.detail.field.typeHelp": "Cenniki bazowe zastępują cenę katalogową; cenniki promocyjne renderują się obok ceny bazowej jako Cena Specjalna.",
1265
+ "priceLists.detail.info.saved": "Zapisano.",
1266
+ "priceLists.detail.info.statusChanged": "Status → {status}.",
1267
+ "priceLists.detail.info.statusDraft": "Status → Szkic.",
1268
+ "priceLists.detail.modifiedAt": "Zmodyfikowano {date}",
1269
+ "priceLists.detail.moveToDraft": "Przenieś do szkicu",
1270
+ "priceLists.detail.notFound": "Nie znaleziono.",
1271
+ "priceLists.detail.picker.cancel": "Anuluj",
1272
+ "priceLists.detail.picker.empty": "Brak pasujących produktów.",
1273
+ "priceLists.detail.picker.error.load": "Nie udało się załadować.",
1274
+ "priceLists.detail.picker.searchPlaceholder": "Szukaj po nazwie lub SKU…",
1275
+ "priceLists.detail.picker.subtitle": "Wybierz produkt, aby dodać go do tego cennika. Każdy produkt może wystąpić tylko raz w danym cenniku.",
1276
+ "priceLists.detail.picker.title": "Dodaj produkt",
1277
+ "priceLists.detail.products.add": "Dodaj",
1278
+ "priceLists.detail.products.confirmRemove": "Usunąć ten produkt z cennika? Jego widełki zostaną skasowane.",
1279
+ "priceLists.detail.products.currencyCount": "{count} wal.",
1280
+ "priceLists.detail.products.empty": "Brak produktów. Dodaj jeden, aby zacząć cenowanie.",
1281
+ "priceLists.detail.products.error.add": "Dodanie nie powiodło się.",
1282
+ "priceLists.detail.products.error.load": "Nie udało się załadować.",
1283
+ "priceLists.detail.products.error.remove": "Usunięcie nie powiodło się.",
1284
+ "priceLists.detail.products.loadingProduct": "Ładowanie produktu…",
1285
+ "priceLists.detail.products.noPrices": "brak cen",
1286
+ "priceLists.detail.products.removeFromList": "Usuń z cennika",
1287
+ "priceLists.detail.products.selectHint": "Wybierz produkt z lewej, aby edytować jego widełki.",
1288
+ "priceLists.detail.products.systemNotice": "Lista produktów cennika Domyślnego jest utworzona z atrybutu defaultPrice przez migrację 031. Produkty i widełki są tu tylko do odczytu; zarządzaj cennikami innymi niż Domyślny dla dowolnych nadpisań cen.",
1289
+ "priceLists.detail.products.title": "Produkty ({count})",
1290
+ "priceLists.detail.rule.discard": "Odrzuć",
1291
+ "priceLists.detail.rule.save": "Zapisz regułę",
1292
+ "priceLists.detail.rule.systemNotice": "Wstępnie utworzony cennik Domyślny zawsze pasuje i nie może nosić reguły (FR-005). Backend odrzuca każdą niepustą regułę dla niego.",
1293
+ "priceLists.detail.rule.title": "Reguła zastosowania",
1294
+ "priceLists.detail.saveChanges": "Zapisz zmiany",
1295
+ "priceLists.detail.saving": "Zapisywanie…",
1296
+ "priceLists.detail.systemDeleteLocked": "Cennik systemowy nie może zostać usunięty.",
1297
+ "priceLists.detail.systemNotice": "To wstępnie utworzony cennik Domyślny. Jego nazwa i typ nie mogą zostać zmienione; cykl życia, usunięcie i edycje reguły są odrzucane przez backend (FR-005, FR-006).",
1298
+ "priceLists.detail.systemStateLocked": "Cennik systemowy nie może zmieniać stanu.",
1299
+ "priceLists.detail.tab.details": "Szczegóły",
1300
+ "priceLists.detail.tab.products": "Produkty i widełki",
1301
+ "priceLists.detail.tab.rule": "Reguła zastosowania",
1302
+ "priceLists.dismiss": "Odrzuć",
1303
+ "priceLists.displayMode.both": "Obie kolumny",
1304
+ "priceLists.displayMode.grossOnly": "Tylko brutto",
1305
+ "priceLists.displayMode.inherit": "Dziedzicz (użyj rodzica w łańcuchu)",
1306
+ "priceLists.displayMode.netOnly": "Tylko netto",
1307
+ "priceLists.displayMode.none": "Żaden — tylko zapytanie ofertowe",
1308
+ "priceLists.displayMode.rowLabel": "Nadpisanie trybu prezentacji ceny",
1309
+ "priceLists.displayMode.savedSuffix": "· zapisano",
1310
+ "priceLists.displayModes.addDialog.cancel": "Anuluj",
1311
+ "priceLists.displayModes.addDialog.modeLabel": "Tryb nadpisania",
1312
+ "priceLists.displayModes.addDialog.noMore": "Brak dostępnych {scope}.",
1313
+ "priceLists.displayModes.addDialog.noneHint": "Klienci nie zobaczą ceny; „Dodaj do koszyka” zastąpione przez „Dodaj do zapytania”.",
1314
+ "priceLists.displayModes.addDialog.save": "Zapisz nadpisanie",
1315
+ "priceLists.displayModes.addDialog.subtitle": "Wybierz {scope} oraz tryb, który ma nadpisać odziedziczoną wartość.",
1316
+ "priceLists.displayModes.addDialog.title": "Dodaj nadpisanie trybu wyświetlania",
1317
+ "priceLists.displayModes.addOverride": "Dodaj nadpisanie",
1318
+ "priceLists.displayModes.column.mode": "Tryb",
1319
+ "priceLists.displayModes.column.updated": "Zaktualizowano",
1320
+ "priceLists.displayModes.description": "Łańcuch rozstrzygania: Ustawienia → Organizacja → Kategoria → Produkt; wygrywa najbardziej specyficzne nadpisanie. „brak” ukrywa każdy element ceny i kieruje intencję zakupu do Zapytań ofertowych.",
1321
+ "priceLists.displayModes.empty.filtered": "Brak nadpisań {scope} pasujących do wyszukiwania.",
1322
+ "priceLists.displayModes.empty.none": "Brak nadpisań {scope}.",
1323
+ "priceLists.displayModes.empty.subtitle": "Bez nadpisania ten zakres dziedziczy z rodzica w łańcuchu rozstrzygania.",
1324
+ "priceLists.displayModes.error.load": "Nie udało się załadować.",
1325
+ "priceLists.displayModes.error.save": "Zapis nie powiódł się.",
1326
+ "priceLists.displayModes.info.removed": "Usunięto nadpisanie.",
1327
+ "priceLists.displayModes.info.saved": "Zapisano nadpisanie.",
1328
+ "priceLists.displayModes.remove": "Usuń",
1329
+ "priceLists.displayModes.scope.category": "Kategoria",
1330
+ "priceLists.displayModes.scope.organization": "Organizacja",
1331
+ "priceLists.displayModes.scope.product": "Produkt",
1332
+ "priceLists.displayModes.searchPlaceholder": "Szukaj {scope}…",
1333
+ "priceLists.displayModes.settings.defaultLabel": "Domyślny tryb wyświetlania (zalogowani klienci)",
1334
+ "priceLists.displayModes.settings.info.saved": "Ustawienie zapisane.",
1335
+ "priceLists.displayModes.settings.subtitle": "— domyślne ustawienia platformowe wykorzystywane przez łańcuch rozstrzygający",
1336
+ "priceLists.displayModes.settings.title": "Ustawienia cenowe",
1337
+ "priceLists.displayModes.settings.unauthLabel": "Tryb wyświetlania dla niezalogowanych (anonimowi odwiedzający)",
1338
+ "priceLists.displayModes.title": "Tryby prezentacji cen",
1339
+ "priceLists.empty.filtered": "Żaden cennik nie pasuje do bieżących filtrów.",
1340
+ "priceLists.empty.none": "Brak cenników",
1341
+ "priceLists.empty.subtitle": "Utwórz cennik, aby nadpisać cenę domyślną katalogu dla grupy klientów, organizacji, kanału sprzedaży lub kategorii.",
1342
+ "priceLists.error.create": "Utworzenie nie powiodło się.",
1343
+ "priceLists.error.load": "Nie udało się załadować.",
1344
+ "priceLists.filter.status": "Status",
1345
+ "priceLists.filter.type": "Typ",
1346
+ "priceLists.info.created": "Utworzono „{name}”.",
1347
+ "priceLists.linked.emptyDescription": "Dodaj ten produkt do cennika, aby zacząć ustalać widełki cenowe per waluta. Cennik Domyślny utworzony przez migrację 031 powinien zawsze go zawierać po migracji cen.",
1348
+ "priceLists.linked.emptyTitle": "Produkt nie jest jeszcze w żadnym cenniku.",
1349
+ "priceLists.linked.error.load": "Nie udało się załadować.",
1350
+ "priceLists.linked.helpText": "Ceny widełkowe znajdują się w edytorze cennika — kliknij wiersz, aby przejść tam z tym produktem wstępnie wybranym.",
1351
+ "priceLists.linked.loading": "Ładowanie…",
1352
+ "priceLists.linked.noBracketsYet": "Brak cen widełkowych dla tego cennika.",
1353
+ "priceLists.linked.open": "Otwórz",
1354
+ "priceLists.linked.openEditor": "Otwórz edytor cennika",
1355
+ "priceLists.linked.system": "Systemowy",
1356
+ "priceLists.loading": "Ładowanie…",
1357
+ "priceLists.page.description": "Silnik cenowy B2B — cenniki bazowe i promocyjne, wielowidełkowe ceny per waluta, reguły zastosowania i status cyklu życia. Wstępnie utworzony cennik Domyślny jest awaryjnym źródłem cen.",
1358
+ "priceLists.page.title": "Cenniki",
1359
+ "priceLists.rule.add": "Dodaj",
1360
+ "priceLists.rule.addCodePlaceholder": "Dodaj kod (np. PLN)",
1361
+ "priceLists.rule.addCriterion": "Dodaj kryterium",
1362
+ "priceLists.rule.addSubgroup": "Dodaj podgrupę",
1363
+ "priceLists.rule.alwaysMatch": "Zawsze pasuje",
1364
+ "priceLists.rule.alwaysMatchHint": "— cennik stosuje się do każdego klienta / kanału / organizacji. Dozwolone tylko na wstępnie utworzonym cenniku Domyślnym.",
1365
+ "priceLists.rule.apply": "Zastosuj ({count})",
1366
+ "priceLists.rule.cancel": "Anuluj",
1367
+ "priceLists.rule.child": "element",
1368
+ "priceLists.rule.children": "elementów",
1369
+ "priceLists.rule.criterion.category": "Kategoria",
1370
+ "priceLists.rule.criterion.currency": "Waluta",
1371
+ "priceLists.rule.criterion.customerGroup": "Grupa klientów",
1372
+ "priceLists.rule.criterion.organization": "Organizacja",
1373
+ "priceLists.rule.criterion.salesChannel": "Kanał sprzedaży",
1374
+ "priceLists.rule.currencyHint": "Waluty są wielkopismienne przy zapisie; nieznane ID są odrzucane.",
1375
+ "priceLists.rule.depthCapReached": "Osiągnięto limit zagłębienia {cap}",
1376
+ "priceLists.rule.depthLimit": "Limit zagłębienia: {cap}.",
1377
+ "priceLists.rule.emptyGroupHint": "Pusta grupa — zwinie się do „Zawsze pasuje” przy zapisie, jeśli nie dodasz kryterium lub podgrupy.",
1378
+ "priceLists.rule.error.load": "Nie udało się załadować.",
1379
+ "priceLists.rule.groupSummary": "{count} {label} · zagłębienie {depth} / {cap}",
1380
+ "priceLists.rule.intro": "Zbuduj regułę decydującą, który klient/organizacja/kanał widzi ten cennik. Pusta reguła (zawsze pasująca) jest dozwolona tylko na wstępnie utworzonym cenniku Domyślnym.",
1381
+ "priceLists.rule.moreSuffix": " (+{count} więcej)",
1382
+ "priceLists.rule.moveDown": "Przesuń w dół",
1383
+ "priceLists.rule.moveUp": "Przesuń w górę",
1384
+ "priceLists.rule.noOptions": "Brak opcji.",
1385
+ "priceLists.rule.pickPlaceholder": "Wybierz {label}…",
1386
+ "priceLists.rule.removeCriterion": "Usuń to kryterium",
1387
+ "priceLists.rule.removeGroup": "Usuń tę grupę",
1388
+ "priceLists.rule.searchLoading": "Ładowanie…",
1389
+ "priceLists.rule.searchPlaceholder": "Szukaj…",
1390
+ "priceLists.search.placeholder": "Szukaj po nazwie…",
1391
+ "priceLists.stat.active": "Aktywne",
1392
+ "priceLists.stat.sale": "Cenniki promocyjne",
1393
+ "priceLists.stat.scheduled": "Zaplanowane",
1394
+ "priceLists.stat.total": "Wszystkie cenniki",
1395
+ "priceLists.status.active": "Aktywny",
1396
+ "priceLists.status.draft": "Szkic",
1397
+ "priceLists.status.expired": "Wygasły",
1398
+ "priceLists.status.scheduled": "Zaplanowany",
1399
+ "priceLists.systemBadge": "Systemowy",
1400
+ "priceLists.type.base": "Bazowy",
1401
+ "priceLists.type.sale": "Promocyjny",
1402
+ "priceLists.window.always": "Zawsze",
1403
+ "profile.changePassword": "Zmień hasło",
1404
+ "profile.emailHelp": "Skontaktuj się z administratorem, jeśli chcesz zmienić swój adres e-mail.",
1405
+ "profile.error.save": "Zapis nie powiódł się.",
1406
+ "profile.field.email": "E-mail",
1407
+ "profile.field.firstName": "Imię",
1408
+ "profile.field.lastName": "Nazwisko",
1409
+ "profile.field.newPassword": "Nowe hasło",
1410
+ "profile.field.newPasswordHelp": "Minimum 12 znaków. Zostaw puste, aby zachować obecne hasło.",
1411
+ "profile.field.newPasswordPlaceholder": "Zostaw puste, aby zachować obecne hasło",
1412
+ "profile.field.role": "Rola",
1413
+ "profile.identityTitle": "Tożsamość",
1414
+ "profile.info.nothingToSave": "Nic do zapisania.",
1415
+ "profile.info.updated": "Profil zaktualizowany.",
1416
+ "profile.loading": "Ładowanie…",
1417
+ "profile.page.descriptionPrefix": "Edytuj swoje imię i nazwisko oraz zmień hasło. Rolą i statusem zarządza administrator z uprawnieniem",
1418
+ "profile.page.descriptionSuffix": ".",
1419
+ "profile.page.title": "Mój profil",
1420
+ "profile.saveChanges": "Zapisz zmiany",
1421
+ "profile.saving": "Zapisywanie…",
1422
+ "profilePage.language.action.save": "Zapisz język",
1423
+ "profilePage.language.failed": "Nie udało się zapisać preferencji językowej. Spróbuj ponownie.",
1424
+ "profilePage.language.option.en": "Angielski",
1425
+ "profilePage.language.option.pl": "Polski",
1426
+ "profilePage.language.saved": "Zapisano preferencję językową.",
1427
+ "profilePage.section.account": "Konto",
1428
+ "profilePage.section.language": "Język",
1429
+ "profilePage.section.language.help": "Wybierz język, w jakim Admin UI ma być wyświetlany dla Twojego konta. Domyślny jest angielski.",
1430
+ "profilePage.title": "Profil",
1431
+ "promotionRules.create.save": "Zapisz regułę",
1432
+ "promotionRules.create.title": "Nowa reguła",
1433
+ "promotionRules.empty": "Brak zapisanych reguł.",
1434
+ "promotionRules.field.name": "Nazwa reguły",
1435
+ "promotionRules.page.description": "Reużywalne nazwane reguły. Zbuduj raz, użyj w wielu promocjach.",
1436
+ "promotionRules.page.title": "Reguły promocji",
1437
+ "promotionStats.breakdown": "Rozbicie",
1438
+ "promotionStats.description": "Wykorzystanie i udzielony rabat — globalnie i wg wymiaru.",
1439
+ "promotionStats.discount": "Rabat",
1440
+ "promotionStats.groupBy": "Grupuj wg",
1441
+ "promotionStats.title": "Statystyki",
1442
+ "promotionStats.totalDiscount": "Suma rabatu",
1443
+ "promotionStats.totalUses": "Liczba użyć",
1444
+ "promotions.action.create": "Utwórz",
1445
+ "promotions.action.delete": "Usuń",
1446
+ "promotions.active.no": "nie",
1447
+ "promotions.active.yes": "tak",
1448
+ "promotions.column.active": "Aktywna",
1449
+ "promotions.column.code": "Kod",
1450
+ "promotions.column.criteria": "Kryteria",
1451
+ "promotions.column.kind": "Rodzaj",
1452
+ "promotions.column.minCart": "Min. koszyk",
1453
+ "promotions.column.name": "Nazwa",
1454
+ "promotions.column.valid": "Ważność",
1455
+ "promotions.column.value": "Wartość",
1456
+ "promotions.coupons.activate": "Aktywuj",
1457
+ "promotions.coupons.active": "Aktywny",
1458
+ "promotions.coupons.add": "Dodaj kupon",
1459
+ "promotions.coupons.code": "Kod kuponu",
1460
+ "promotions.coupons.colCode": "Kod",
1461
+ "promotions.coupons.colScope": "Zakres",
1462
+ "promotions.coupons.colStatus": "Status",
1463
+ "promotions.coupons.copied": "Skopiowano",
1464
+ "promotions.coupons.copyCode": "Kopiuj kod",
1465
+ "promotions.coupons.deactivate": "Dezaktywuj",
1466
+ "promotions.coupons.empty": "Brak kuponów. Dodaj pojedynczy kod lub wygeneruj partię.",
1467
+ "promotions.coupons.inactive": "Nieaktywny",
1468
+ "promotions.coupons.saveFirst": "Najpierw zapisz promocję, aby dodać kody kuponów lub wygenerować partię.",
1469
+ "promotions.coupons.selectedCount": "Zaznaczono: {count}",
1470
+ "promotions.coupons.title": "Kupony",
1471
+ "promotions.create.title": "Utwórz promocję",
1472
+ "promotions.criteria.add": "Dodaj kryterium",
1473
+ "promotions.criteria.empty": "Brak skonfigurowanych kryteriów. Promocja stosuje się do każdej linii koszyka, która przechodzi dotychczasowy zakres płaski.",
1474
+ "promotions.criteria.loading": "Ładowanie atrybutów dostępnych dla promocji…",
1475
+ "promotions.criteria.noAttributes": "Żaden atrybut nie jest jeszcze oznaczony jako reguła promocyjna. Włącz flagę w sekcji Katalog → Atrybuty, aby udostępnić go tutaj.",
1476
+ "promotions.criteria.title": "Kryteria (oparte na atrybutach)",
1477
+ "promotions.criterion.unknownAttribute": "(nieznany atrybut)",
1478
+ "promotions.deleteConfirm": "Usunąć tę promocję?",
1479
+ "promotions.edit.action": "Akcja",
1480
+ "promotions.edit.actionType": "Typ akcji",
1481
+ "promotions.edit.cancel": "Anuluj",
1482
+ "promotions.edit.description": "Zdefiniuj regułę aplikowania promocji oraz akcję, którą wykonuje.",
1483
+ "promotions.edit.general": "Ogólne",
1484
+ "promotions.edit.limits": "Limity użyć",
1485
+ "promotions.edit.noConfig": "Ta akcja nie ma dodatkowej konfiguracji.",
1486
+ "promotions.edit.rule": "Reguła",
1487
+ "promotions.edit.ruleCopyFrom": "Skopiuj z zapisanej reguły…",
1488
+ "promotions.edit.ruleCopyHint": "Wybór zapisanej reguły kopiuje jej definicję do edytora poniżej. Późniejsze zmiany w zapisanej regule nie wpłyną na tę promocję.",
1489
+ "promotions.edit.save": "Zapisz",
1490
+ "promotions.edit.titleEdit": "Edytuj",
1491
+ "promotions.edit.titleNew": "Nowa promocja",
1492
+ "promotions.empty": "Brak promocji.",
1493
+ "promotions.error.delete": "Usunięcie nie powiodło się.",
1494
+ "promotions.error.load": "Nie udało się załadować.",
1495
+ "promotions.error.loadAttributes": "Nie udało się załadować atrybutów.",
1496
+ "promotions.error.save": "Zapis nie powiódł się.",
1497
+ "promotions.field.active": "Aktywna",
1498
+ "promotions.field.code": "Kod (opcjonalny)",
1499
+ "promotions.field.currency": "Waluta",
1500
+ "promotions.field.description": "Opis",
1501
+ "promotions.field.kind": "Rodzaj",
1502
+ "promotions.field.name": "Nazwa wyświetlana",
1503
+ "promotions.field.priority": "Priorytet",
1504
+ "promotions.field.stopFurther": "Zatrzymaj kolejne promocje",
1505
+ "promotions.field.value": "Wartość",
1506
+ "promotions.field.valueIgnored": "Wartość (ignorowana)",
1507
+ "promotions.field.valuePercent": "Wartość (%)",
1508
+ "promotions.generator.count": "Liczba kuponów",
1509
+ "promotions.generator.dashEvery": "Myślnik co N znaków (0 = brak)",
1510
+ "promotions.generator.export": "Pobierz CSV",
1511
+ "promotions.generator.format": "Format znaków",
1512
+ "promotions.generator.generate": "Generuj",
1513
+ "promotions.generator.length": "Długość kodu",
1514
+ "promotions.generator.limitScope": "Zakres limitu",
1515
+ "promotions.generator.prefix": "Prefiks",
1516
+ "promotions.generator.suffix": "Sufiks",
1517
+ "promotions.generator.title": "Wygeneruj partię",
1518
+ "promotions.loading": "Ładowanie…",
1519
+ "promotions.page.description": "Rabaty na poziomie koszyka. Wartości procentowe 0..100; rabat kwotowy wymaga waluty.",
1520
+ "promotions.page.title": "Promocje",
1521
+ "promotions.placeholder.csv": "wartości oddzielone przecinkami",
1522
+ "promotions.placeholder.value": "wartość",
1523
+ "promotions.range.max": "max",
1524
+ "promotions.range.min": "min",
1525
+ "promotions.success.create": "Promocja {name} została utworzona.",
1526
+ "promotions.value.freeDelivery": "darmowa dostawa",
1527
+ "reorder.groupLabel": "Zmiana kolejności",
1528
+ "reorder.moveDown": "Przenieś niżej",
1529
+ "reorder.moveUp": "Przenieś wyżej",
1530
+ "reorder.saving": "Zapisywanie kolejności…",
1531
+ "returns.action.exportCsv": "Eksport CSV",
1532
+ "returns.action.open": "Otwórz",
1533
+ "returns.bulk.authorize": "Autoryzuj zaznaczone ({count})",
1534
+ "returns.bulk.result": "Autoryzowano: {authorized}, pominięto: {skipped}",
1535
+ "returns.bulk.selected": "Zaznaczono: {count}",
1536
+ "returns.col.customer": "Klient",
1537
+ "returns.col.kind": "Typ",
1538
+ "returns.col.org": "Organizacja",
1539
+ "returns.col.refund": "Zwrot",
1540
+ "returns.col.rma": "RMA",
1541
+ "returns.col.status": "Status",
1542
+ "returns.col.submitted": "Zgłoszono",
1543
+ "returns.description": "Zarządzaj sprawami zwrotów i reklamacji.",
1544
+ "returns.detail.actionFailed": "Operacja nie powiodła się.",
1545
+ "returns.detail.col.approved": "Zatwierdzono",
1546
+ "returns.detail.col.product": "Produkt",
1547
+ "returns.detail.correctiveInvoice.issued": "Wystawiona",
1548
+ "returns.detail.correctiveInvoice.notDue.order_not_invoiced": "Faktura korygująca nie była wymagana: do zamówienia nie wystawiono faktury, więc nie ma czego korygować.",
1549
+ "returns.detail.correctiveInvoice.notRequested": "Nie zlecono wystawienia faktury korygującej dla tego rozliczenia.",
1550
+ "returns.detail.correctiveInvoice.open": "Otwórz fakturę korygującą",
1551
+ "returns.detail.correctiveInvoice.title": "Faktura korygująca",
1552
+ "returns.detail.resolution.credit": "Środki na przyszłe zamówienia",
1553
+ "returns.detail.resolution.refund": "Zwrot pieniędzy",
1554
+ "returns.detail.resolution.repair": "Naprawa",
1555
+ "returns.detail.resolution.replacement": "Wymiana",
1556
+ "returns.detail.settlement.createCorrectiveInvoice": "Wystaw fakturę korygującą",
1557
+ "returns.detail.settlement.done": "Rozliczono.",
1558
+ "returns.detail.settlement.gatewayRejected": "Bramka płatnicza odrzuciła zwrot środków.",
1559
+ "returns.detail.settlement.maxPaid": "Maks. (zapłacono)",
1560
+ "returns.detail.settlement.paymentMethodId": "Identyfikator metody zwrotu płatności",
1561
+ "returns.detail.settlement.resolution": "Rozstrzygnięcie",
1562
+ "returns.detail.settlement.settle": "Rozlicz sprawę",
1563
+ "returns.detail.settlement.title": "Rozliczenie",
1564
+ "returns.detail.title": "Sprawa zwrotu",
1565
+ "returns.empty": "Brak spraw zwrotów.",
1566
+ "returns.error.bulk": "Operacja zbiorcza nie powiodła się",
1567
+ "returns.error.load": "Nie udało się wczytać zwrotów",
1568
+ "returns.field.search": "Szukaj",
1569
+ "returns.field.sort": "Sortowanie",
1570
+ "returns.filter.all": "Wszystkie",
1571
+ "returns.filter.clearAll": "Wyczyść",
1572
+ "returns.filter.kind": "Typ",
1573
+ "returns.filter.rmaNumber": "Numer RMA",
1574
+ "returns.filter.status": "Status",
1575
+ "returns.kind.complaint": "Reklamacja",
1576
+ "returns.kind.return": "Zwrot",
1577
+ "returns.loading": "Wczytywanie zwrotów…",
1578
+ "returns.methods.description": "Metody i koszt (0 = bezpłatnie / na koszt sklepu) do przesyłek zwrotnych.",
1579
+ "returns.methods.title": "Metody dostawy zwrotnej",
1580
+ "returns.nav.csv": "CSV",
1581
+ "returns.nav.reasons": "Powody",
1582
+ "returns.nav.returnMethods": "Metody zwrotu",
1583
+ "returns.nav.workflow": "Workflow",
1584
+ "returns.reasons.description": "Powody oferowane w formularzu zwrotu w sklepie.",
1585
+ "returns.reasons.title": "Powody zwrotów",
1586
+ "returns.search.placeholder": "Numer RMA…",
1587
+ "returns.sort.newest": "Najnowsze",
1588
+ "returns.sort.oldest": "Najstarsze",
1589
+ "returns.sort.rmaAsc": "RMA rosnąco",
1590
+ "returns.sort.rmaDesc": "RMA malejąco",
1591
+ "returns.statuses.description": "Konfiguruj cykl życia i przejścia statusów zwrotu/reklamacji.",
1592
+ "returns.statuses.title": "Statusy zwrotów",
1593
+ "returns.title": "Zwroty / RMA",
1594
+ "rfq.detail.actions": "Akcje",
1595
+ "rfq.detail.approve": "Zatwierdź",
1596
+ "rfq.detail.approveDescription": "Zatwierdzenie blokuje uzgodnione ceny i pozwala klientowi przekształcić zapytanie w zamówienie.",
1597
+ "rfq.detail.backToList": "Powrót do listy",
1598
+ "rfq.detail.badge.awaitingRevision": "Oczekuje na akceptację rewizji przez klienta",
1599
+ "rfq.detail.badge.cancelReason": "Powód anulowania: {reason}",
1600
+ "rfq.detail.badge.validityEnded": "Ważność zakończona",
1601
+ "rfq.detail.cancelDialog.confirm": "Potwierdź anulowanie",
1602
+ "rfq.detail.cancelDialog.dismiss": "Zostaw ZO",
1603
+ "rfq.detail.cancelDialog.title": "Anulować to zapytanie ofertowe?",
1604
+ "rfq.detail.cancelReason": "Powód anulowania (opcjonalnie)",
1605
+ "rfq.detail.cancelReasonPlaceholder": "Co przekazać klientowi?",
1606
+ "rfq.detail.cancelRfq": "Anuluj ZO",
1607
+ "rfq.detail.column.agreed": "Uzgodniona",
1608
+ "rfq.detail.column.desired": "Oczekiwana",
1609
+ "rfq.detail.column.lineTotal": "Suma pozycji",
1610
+ "rfq.detail.column.product": "Produkt",
1611
+ "rfq.detail.column.qty": "Ilość",
1612
+ "rfq.detail.convert.description": "Ładuje wynegocjowane pozycje do koszyka klienta po uzgodnionych cenach jednostkowych i otwiera checkout. Zapytanie ofertowe przechodzi w status Zakończone po złożeniu zamówienia.",
1613
+ "rfq.detail.convert.error": "Konwersja nie powiodła się.",
1614
+ "rfq.detail.convert.placeOrder": "Złóż zamówienie z tego zapytania",
1615
+ "rfq.detail.convert.success": "Koszyk przygotowany: {cartId} — otwórz {url}",
1616
+ "rfq.detail.convert.title": "Konwertuj na zamówienie",
1617
+ "rfq.detail.copied": "Skopiowano {id}",
1618
+ "rfq.detail.copyError": "Kopiowanie nie powiodło się.",
1619
+ "rfq.detail.copyHint": "Kopiuj ID",
1620
+ "rfq.detail.description": "Organizacja {orgId} · Klient {customerId}",
1621
+ "rfq.detail.error.approve": "Zatwierdzenie nie powiodło się.",
1622
+ "rfq.detail.error.cancel": "Anulowanie nie powiodło się.",
1623
+ "rfq.detail.error.load": "Nie udało się załadować.",
1624
+ "rfq.detail.grossLabel": "Suma brutto",
1625
+ "rfq.detail.headerNote": "Notatka nagłówkowa",
1626
+ "rfq.detail.history.empty": "Brak zdarzeń.",
1627
+ "rfq.detail.history.title": "Historia zmian",
1628
+ "rfq.detail.info.approved": "Zatwierdzono zapytanie ofertowe.",
1629
+ "rfq.detail.info.canceled": "Anulowano zapytanie ofertowe.",
1630
+ "rfq.detail.lineItems": "Pozycje ({count})",
1631
+ "rfq.detail.loading": "Ładowanie…",
1632
+ "rfq.detail.meta.created": "Utworzono {date}",
1633
+ "rfq.detail.meta.expired": "wygasło {date}",
1634
+ "rfq.detail.meta.expires": "wygasa {date}",
1635
+ "rfq.detail.meta.submitted": "zgłoszono {date}",
1636
+ "rfq.detail.meta.validityEnded": "ważność zakończona {date}",
1637
+ "rfq.detail.modify.addLine": "+ Dodaj pozycję",
1638
+ "rfq.detail.modify.agreedUnitPrice": "Uzgodniona cena jednostkowa",
1639
+ "rfq.detail.modify.desiredPrice": "Cena oczekiwana",
1640
+ "rfq.detail.modify.error.atLeastOneLine": "Wymagana jest co najmniej jedna pozycja.",
1641
+ "rfq.detail.modify.error.save": "Modyfikacja nie powiodła się.",
1642
+ "rfq.detail.modify.headerNote": "Notatka nagłówkowa",
1643
+ "rfq.detail.modify.info.saved": "Zmodyfikowano zapytanie ofertowe — klient powiadomiony.",
1644
+ "rfq.detail.modify.lineTotal": "Wartość pozycji",
1645
+ "rfq.detail.modify.productId": "ID produktu",
1646
+ "rfq.detail.modify.quantity": "Ilość",
1647
+ "rfq.detail.modify.remove": "Usuń",
1648
+ "rfq.detail.modify.saveRevision": "Zapisz rewizję (powiadamia klienta)",
1649
+ "rfq.detail.modify.title": "Modyfikuj (negocjacja)",
1650
+ "rfq.detail.netLabel": "Suma netto",
1651
+ "rfq.detail.notFound": "Nie znaleziono zapytania ofertowego.",
1652
+ "rfq.detail.org.taxId": "NIP",
1653
+ "rfq.detail.org.vat": "Status VAT",
1654
+ "rfq.detail.sections.buyerNote": "Uwagi kupującego",
1655
+ "rfq.detail.sections.customer": "Klient",
1656
+ "rfq.detail.sections.items": "Pozycje",
1657
+ "rfq.detail.sections.organization": "Organizacja",
1658
+ "rfq.detail.sections.status": "Status i akcje",
1659
+ "rfq.detail.tabs.history": "Historia",
1660
+ "rfq.detail.tabs.modify": "Modyfikacja",
1661
+ "rfq.detail.tabs.overview": "Przegląd",
1662
+ "rfq.detail.taxLabel": "VAT ({rate}%)",
1663
+ "rfq.detail.title": "Zapytanie ofertowe {id}",
1664
+ "rfq.detail.totalLabel": "Suma",
1665
+ "rfq.detail.validity.error.days": "Podaj całkowitą liczbę dni — 0 lub więcej.",
1666
+ "rfq.detail.validity.field": "Ważne przez (dni od dziś)",
1667
+ "rfq.detail.validity.help.keepActive": "Pozostaw puste, aby zachować obecny termin: {date}.",
1668
+ "rfq.detail.validity.help.keepLapsed": "Pozostaw puste, aby zachować termin, który już minął: {date} — klient nadal będzie odrzucany.",
1669
+ "rfq.detail.validity.help.keepNone": "Nie ustawiono terminu. Pozostaw puste, aby tak zostało — nic nie odrzuci klienta.",
1670
+ "rfq.detail.validity.help.preview": "Zapis ustawi termin na {date}; klient go zobaczy.",
1671
+ "rfq.detail.validity.help.previewImmediate": "0 dni kończy ważność natychmiast ({date}): klient nie będzie mógł zaakceptować ani zamówić tej oferty.",
1672
+ "rfq.detail.validity.lapsed.headline": "Ważność tej oferty zakończyła się {date}.",
1673
+ "rfq.detail.validity.lapsed.remedyEditable": "Klient zostanie odrzucony przy akceptacji rewizji, a zatwierdzenie jest wstrzymane, ponieważ zatwierdzonej oferty nie da się już przedatować. Ustaw nowy termin w zakładce Modyfikuj i zapisz rewizję — klient zostanie powiadomiony.",
1674
+ "rfq.detail.validity.lapsed.remedyLocked": "Klient zostanie odrzucony przy składaniu zamówienia, a zatwierdzonej oferty nie można już modyfikować — jej terminu nie da się przesunąć. Poproś klienta o ponowne zgłoszenie zapytania.",
1675
+ "rfq.detail.validity.lapsed.setNewDeadline": "Ustaw nowy termin",
1676
+ "rfq.detail.validity.placeholder": "Bez zmian",
1677
+ "rfq.detail.vatStatus.reverse_charge": "Odwrotne obciążenie",
1678
+ "rfq.detail.vatStatus.vat_exempt": "Zwolniony z VAT",
1679
+ "rfq.detail.vatStatus.vat_payer": "Płatnik VAT",
1680
+ "rfq.list.badge.awaitingCustomer": "Oczekuje na klienta",
1681
+ "rfq.list.column.customer": "Klient",
1682
+ "rfq.list.column.lines": "Pozycje",
1683
+ "rfq.list.column.org": "Organizacja",
1684
+ "rfq.list.column.organization": "Organizacja",
1685
+ "rfq.list.column.rfq": "ZO",
1686
+ "rfq.list.column.status": "Status",
1687
+ "rfq.list.column.total": "Suma",
1688
+ "rfq.list.column.updated": "Zaktualizowano",
1689
+ "rfq.list.columns.label": "Kolumny",
1690
+ "rfq.list.create": "Utwórz zapytanie ofertowe",
1691
+ "rfq.list.description": "Zapytania klientów oczekujące na odpowiedź.",
1692
+ "rfq.list.empty": "Żadne zapytanie ofertowe nie pasuje do bieżącego filtra.",
1693
+ "rfq.list.error.load": "Nie udało się załadować.",
1694
+ "rfq.list.field.organizationId": "Identyfikator organizacji (opcjonalnie)",
1695
+ "rfq.list.field.search": "Szukaj",
1696
+ "rfq.list.field.sort": "Sortowanie",
1697
+ "rfq.list.field.status": "Status",
1698
+ "rfq.list.field.uuid": "UUID",
1699
+ "rfq.list.field.visibility": "Widoczność",
1700
+ "rfq.list.filter.clearAll": "Wyczyść wszystko",
1701
+ "rfq.list.filter.toggle": "Filtry",
1702
+ "rfq.list.loading": "Ładowanie…",
1703
+ "rfq.list.open": "Otwórz",
1704
+ "rfq.list.refresh": "Odśwież",
1705
+ "rfq.list.scope.all": "Wszystkie (admin platformy)",
1706
+ "rfq.list.scope.mine": "Moje organizacje",
1707
+ "rfq.list.scope.unassigned": "Nieprzypisane organizacje",
1708
+ "rfq.list.search.placeholder": "Szukaj po ID, organizacji lub kliencie…",
1709
+ "rfq.list.sort.newest": "Najnowsze",
1710
+ "rfq.list.sort.oldest": "Najstarsze",
1711
+ "rfq.list.sort.totalDesc": "Najwyższa wartość",
1712
+ "rfq.list.statusFilter.all": "Wszystkie",
1713
+ "rfq.list.statusFilter.approved": "Zatwierdzone",
1714
+ "rfq.list.statusFilter.canceled": "Anulowane",
1715
+ "rfq.list.statusFilter.completed": "Zakończone",
1716
+ "rfq.list.statusFilter.createdFromAdmin": "Utworzone przez admina",
1717
+ "rfq.list.statusFilter.expired": "Wygasłe",
1718
+ "rfq.list.statusFilter.pending": "Oczekujące",
1719
+ "rfq.list.title": "Zapytania ofertowe",
1720
+ "rfqCreate.addItem": "Dodaj pozycję",
1721
+ "rfqCreate.back": "Powrót do zapytań ofertowych",
1722
+ "rfqCreate.description": "Utwórz zapytanie ofertowe w imieniu klienta",
1723
+ "rfqCreate.empty.customers": "Brak pasujących klientów",
1724
+ "rfqCreate.error": "Nie udało się utworzyć zapytania ofertowego",
1725
+ "rfqCreate.field.agreedUnitPrice": "Uzgodniona cena jedn.",
1726
+ "rfqCreate.field.customer": "Klient",
1727
+ "rfqCreate.field.expiresInDays": "Wygasa za (dni)",
1728
+ "rfqCreate.field.headerNote": "Notatka nagłówkowa",
1729
+ "rfqCreate.field.product": "Produkt",
1730
+ "rfqCreate.field.quantity": "Ilość",
1731
+ "rfqCreate.loading": "Ładowanie…",
1732
+ "rfqCreate.noOrgWarning": "Ten klient nie jest przypisany do organizacji. Zapytania ofertowe wymagają organizacji.",
1733
+ "rfqCreate.placeholder.customer": "Szukaj po nazwie lub e-mailu…",
1734
+ "rfqCreate.placeholder.expiresInDays": "Bez wygaśnięcia",
1735
+ "rfqCreate.placeholder.headerNote": "Opcjonalna notatka widoczna dla klienta",
1736
+ "rfqCreate.placeholder.product": "Szukaj po nazwie, SKU lub slugu…",
1737
+ "rfqCreate.section.customer": "Klient",
1738
+ "rfqCreate.section.items": "Pozycje",
1739
+ "rfqCreate.section.options": "Opcje",
1740
+ "rfqCreate.submit": "Utwórz zapytanie ofertowe",
1741
+ "rfqCreate.submitting": "Tworzenie…",
1742
+ "rfqCreate.title": "Utwórz zapytanie ofertowe",
1743
+ "rfqCreate.total": "Razem",
1744
+ "ruleBuilder.values.label": "Wartość",
1745
+ "ruleBuilder.values.placeholder": "Dowolna wartość",
1746
+ "ruleBuilder.values.search": "Szukaj wartości…",
1747
+ "scopeNotice.organizationAttributionPending.title": "Te rekordy nie są jeszcze przypisane do organizacji",
1748
+ "scopeNotice.organizationAttributionPending.body": "Widzisz rekordy należące do organizacji, z którymi pracujesz. Żaden z tych rekordów nie wskazuje jeszcze organizacji, więc żaden nie może się tu pojawić. Nic nie zniknęło i z Twoim kontem wszystko jest w porządku — tak są dziś zapisane te rekordy, a osoba, której dostęp nie jest ograniczony do wybranych organizacji, nadal je widzi.",
1749
+ "scopePicker.languages": "Języki",
1750
+ "scopePicker.loadingLanguages": "Ładowanie języków kanału…",
1751
+ "scopePicker.selectChannel": "Wybierz co najmniej jeden kanał.",
1752
+ "scopePicker.title": "Zakres",
1753
+ "seo.meta.error.load": "Nie udało się załadować meta.",
1754
+ "seo.meta.error.save": "Zapis nie powiódł się.",
1755
+ "seo.meta.field.description": "Opis",
1756
+ "seo.meta.field.entityUuid": "UUID encji",
1757
+ "seo.meta.field.locale": "lokalizacja",
1758
+ "seo.meta.field.ogDescription": "Opis OG",
1759
+ "seo.meta.field.ogImage": "Obraz OG",
1760
+ "seo.meta.field.ogImageUrl": "URL obrazu OG",
1761
+ "seo.meta.field.ogTitle": "Tytuł OG",
1762
+ "seo.meta.field.title": "Tytuł",
1763
+ "seo.meta.info.saved": "Zapisano nadpisanie.",
1764
+ "seo.meta.load": "Załaduj",
1765
+ "seo.meta.overrideHeading": "Nadpisanie (zostaw puste, aby wrócić do reguły)",
1766
+ "seo.meta.resolvedTitle": "Rozstrzygnięte (źródło: {source})",
1767
+ "seo.meta.saveOverride": "Zapisz nadpisanie",
1768
+ "seo.meta.saving": "Zapisywanie…",
1769
+ "seo.meta.title": "Nadpisania znaczników meta",
1770
+ "seo.page.description": "Generowanie map witryny per kanał oraz nadpisania znaczników meta.",
1771
+ "seo.page.title": "SEO",
1772
+ "seo.sitemap.column.actions": "Akcje",
1773
+ "seo.sitemap.column.channel": "Kanał sprzedaży",
1774
+ "seo.sitemap.column.lastGenerated": "Ostatnio wygenerowano",
1775
+ "seo.sitemap.column.size": "Rozmiar",
1776
+ "seo.sitemap.column.storefrontUrl": "URL sklepu",
1777
+ "seo.sitemap.column.urls": "URL-i",
1778
+ "seo.sitemap.download": "Pobierz",
1779
+ "seo.sitemap.empty": "Brak aktywnych kanałów sprzedaży.",
1780
+ "seo.sitemap.error.download": "Pobieranie nie powiodło się.",
1781
+ "seo.sitemap.error.load": "Nie udało się załadować statusu mapy witryny.",
1782
+ "seo.sitemap.error.popupBlocked": "Wyskakujące okienko zostało zablokowane — zezwól na wyskakujące okienka dla tej witryny, aby podejrzeć mapę witryny.",
1783
+ "seo.sitemap.error.preview": "Podgląd nie powiódł się.",
1784
+ "seo.sitemap.error.regenerate": "Generowanie nie powiodło się.",
1785
+ "seo.sitemap.help.middle": ". Skonfiguruj go w Ustawienia → Kanały sprzedaży dla każdego kanału; puste wraca do zmiennej środowiskowej",
1786
+ "seo.sitemap.help.prefix": "URL sklepu jest odczytywany z per-kanałowego ustawienia",
1787
+ "seo.sitemap.help.suffix": ".",
1788
+ "seo.sitemap.loading": "Ładowanie…",
1789
+ "seo.sitemap.preview": "Podgląd",
1790
+ "seo.sitemap.regenerate": "Wygeneruj ponownie",
1791
+ "seo.sitemap.regenerated": "Wygenerowano mapę witryny dla „{code}” — {count} URL-i ({size}).",
1792
+ "seo.sitemap.sourcePrefix": "źródło:",
1793
+ "seo.sitemap.title": "Mapa witryny",
1794
+ "taxes.action.delete": "Usuń",
1795
+ "taxes.action.save": "Zapisz",
1796
+ "taxes.badge.default": "domyślna",
1797
+ "taxes.column.code": "Kod",
1798
+ "taxes.column.country": "Kraj",
1799
+ "taxes.column.default": "Domyślna",
1800
+ "taxes.column.name": "Nazwa",
1801
+ "taxes.column.priority": "Priorytet",
1802
+ "taxes.column.productType": "Typ produktu",
1803
+ "taxes.column.rate": "Stawka",
1804
+ "taxes.column.vatStatuses": "Statusy VAT",
1805
+ "taxes.deleteConfirm": "Usunąć tę regułę podatkową?",
1806
+ "taxes.empty": "Brak reguł podatkowych.",
1807
+ "taxes.error.delete": "Usunięcie nie powiodło się.",
1808
+ "taxes.error.load": "Nie udało się załadować.",
1809
+ "taxes.error.save": "Zapis nie powiódł się.",
1810
+ "taxes.field.code": "Kod",
1811
+ "taxes.field.country": "Kraj (ISO-2, puste = dowolny)",
1812
+ "taxes.field.isDefault": "Domyślna reguła awaryjna",
1813
+ "taxes.field.name": "Nazwa wyświetlana",
1814
+ "taxes.field.priority": "Priorytet (wyższa wartość wygrywa przy remisie)",
1815
+ "taxes.field.productType": "Typ produktu (puste = dowolny)",
1816
+ "taxes.field.rate": "Stawka (ułamek dziesiętny — 0,23 = 23%)",
1817
+ "taxes.field.vatStatuses": "Stosuje się do statusów VAT (brak = dowolny)",
1818
+ "taxes.loading": "Ładowanie…",
1819
+ "taxes.noPermission": "Nie masz uprawnień do przeglądania reguł podatkowych.",
1820
+ "taxes.option.any": "— dowolny —",
1821
+ "taxes.page.description": "Stawki definiowane regułowo, zawężane krajem, typem produktu i statusem VAT kupującego.",
1822
+ "taxes.page.title": "Podatki",
1823
+ "taxes.success.save": "Zapisano podatek {code}.",
1824
+ "taxes.upsert.title": "Nowa / aktualizuj regułę podatkową",
1825
+ "warehouses.action.cancel": "Anuluj",
1826
+ "warehouses.action.create": "Utwórz magazyn",
1827
+ "warehouses.action.delete": "Usuń",
1828
+ "warehouses.action.new": "Nowy magazyn",
1829
+ "warehouses.action.saveChanges": "Zapisz zmiany",
1830
+ "warehouses.action.saving": "Zapisywanie…",
1831
+ "warehouses.channel.action.add": "Dodaj",
1832
+ "warehouses.channel.action.adding": "Dodawanie…",
1833
+ "warehouses.channel.action.makeDefault": "Ustaw jako domyślny",
1834
+ "warehouses.channel.action.unassign": "Odepnij",
1835
+ "warehouses.channel.addTitle": "Dodaj magazyn",
1836
+ "warehouses.channel.alert.promoteFirst": "Zanim odepniesz bieżący domyślny magazyn, ustaw inny jako domyślny.",
1837
+ "warehouses.channel.column.code": "Kod",
1838
+ "warehouses.channel.column.default": "Domyślny",
1839
+ "warehouses.channel.column.sort": "Kolejność",
1840
+ "warehouses.channel.column.warehouse": "Magazyn",
1841
+ "warehouses.channel.confirm.unassign": "Odpiąć ten magazyn od kanału?",
1842
+ "warehouses.channel.defaultBadge": "Domyślny",
1843
+ "warehouses.channel.empty": "Do tego kanału nie przypisano jeszcze żadnego magazynu.",
1844
+ "warehouses.channel.error.assign": "Przypisanie nie powiodło się.",
1845
+ "warehouses.channel.error.load": "Nie udało się załadować.",
1846
+ "warehouses.channel.error.unassign": "Odpięcie nie powiodło się.",
1847
+ "warehouses.channel.error.update": "Aktualizacja nie powiodła się.",
1848
+ "warehouses.channel.field.pickOne": "— wybierz —",
1849
+ "warehouses.channel.field.warehouse": "Magazyn",
1850
+ "warehouses.channel.info.assigned": "Magazyn przypisany.",
1851
+ "warehouses.channel.info.defaultChanged": "Zmieniono domyślny magazyn.",
1852
+ "warehouses.channel.info.removed": "Usunięto przypisanie.",
1853
+ "warehouses.channel.loading": "Ładowanie magazynów kanału…",
1854
+ "warehouses.channel.title": "Magazyny dla tego kanału",
1855
+ "warehouses.column.code": "Kod",
1856
+ "warehouses.column.defaultFor": "Domyślny dla",
1857
+ "warehouses.column.name": "Nazwa",
1858
+ "warehouses.column.onHand": "Stan",
1859
+ "warehouses.column.products": "Produkty",
1860
+ "warehouses.column.status": "Status",
1861
+ "warehouses.column.updated": "Zaktualizowano",
1862
+ "warehouses.editor.addressTitle": "Adres (opcjonalnie)",
1863
+ "warehouses.editor.backToList": "Wszystkie magazyny",
1864
+ "warehouses.editor.channelDefaultsSuffix": "{count} domyślnych kanałów",
1865
+ "warehouses.editor.contactTitle": "Kontakt (opcjonalnie)",
1866
+ "warehouses.editor.deleteConfirm": "Usunąć magazyn „{name}”? Tej operacji nie można cofnąć.",
1867
+ "warehouses.editor.error.delete": "Usunięcie nie powiodło się.",
1868
+ "warehouses.editor.error.load": "Nie udało się załadować magazynu.",
1869
+ "warehouses.editor.error.save": "Zapis nie powiódł się.",
1870
+ "warehouses.editor.fallbackTitle": "Magazyn",
1871
+ "warehouses.editor.field.active": "Aktywny",
1872
+ "warehouses.editor.field.city": "Miasto",
1873
+ "warehouses.editor.field.code": "Kod",
1874
+ "warehouses.editor.field.codeHelp": "Małe litery, cyfry, myślniki, podkreślenia. Niezmienne po utworzeniu.",
1875
+ "warehouses.editor.field.contactEmail": "E-mail",
1876
+ "warehouses.editor.field.contactName": "Imię i nazwisko",
1877
+ "warehouses.editor.field.contactPhone": "Telefon",
1878
+ "warehouses.editor.field.countryCode": "Kod kraju",
1879
+ "warehouses.editor.field.countryNone": "— brak —",
1880
+ "warehouses.editor.field.defaultLowStockThreshold": "Domyślny próg niskiego stanu",
1881
+ "warehouses.editor.field.defaultLowStockThresholdHelp": "Stosowane dla produktów bez własnego progu. System bierze największą wartość spośród magazynów posiadających stan dla produktu.",
1882
+ "warehouses.editor.field.defaultLowStockThresholdPlaceholder": "Puste = brak progu na poziomie magazynu",
1883
+ "warehouses.editor.field.description": "Opis",
1884
+ "warehouses.editor.field.name": "Nazwa",
1885
+ "warehouses.editor.field.postalCode": "Kod pocztowy",
1886
+ "warehouses.editor.field.street": "Ulica",
1887
+ "warehouses.editor.identityTitle": "Tożsamość",
1888
+ "warehouses.editor.lowStockTitle": "Próg niskiego stanu (opcjonalnie)",
1889
+ "warehouses.editor.newTitle": "Nowy magazyn",
1890
+ "warehouses.editor.systemDefaultSuffix": " · domyślny systemowy",
1891
+ "warehouses.empty": "Żaden magazyn nie pasuje do bieżących filtrów",
1892
+ "warehouses.error.load": "Nie udało się załadować.",
1893
+ "warehouses.filter.activeOnly": "Tylko aktywne",
1894
+ "warehouses.loading": "Ładowanie…",
1895
+ "warehouses.page.sub.prefix": "Lokalizacje magazynowe · Wstępnie utworzony magazyn",
1896
+ "warehouses.page.sub.suffix": "nie może zostać usunięty, dopóki obsługuje kanały sprzedaży.",
1897
+ "warehouses.page.title": "Magazyny",
1898
+ "warehouses.search.placeholder": "Szukaj kodu lub nazwy…",
1899
+ "warehouses.status.active": "Aktywny",
1900
+ "warehouses.status.inactive": "Nieaktywny",
1901
+ "webhooks.action.delete": "Usuń",
1902
+ "webhooks.action.deleteConfirm": "Usunąć ten webhook? Oczekujące dostarczenia zostaną dokończone, ale nowe nie będą kolejkowane.",
1903
+ "webhooks.action.pause": "Wstrzymaj",
1904
+ "webhooks.action.refresh": "Odśwież",
1905
+ "webhooks.action.replay": "Powtórz",
1906
+ "webhooks.action.resume": "Wznów",
1907
+ "webhooks.column.events": "Zdarzenia",
1908
+ "webhooks.column.name": "Nazwa",
1909
+ "webhooks.column.organization": "Organizacja",
1910
+ "webhooks.column.status": "Status",
1911
+ "webhooks.column.url": "URL",
1912
+ "webhooks.create.eventsLabel": "Zdarzenia",
1913
+ "webhooks.create.nameLabel": "Nazwa",
1914
+ "webhooks.create.namePlaceholder": "np. sync zamówień ERP",
1915
+ "webhooks.create.organizationHelp": "Pozostaw puste, aby subskrypcja obejmowała całą platformę i otrzymywała zdarzenia wszystkich organizacji. Powiąż organizację, aby dostarczać wyłącznie zdarzenia zamówień tej organizacji.",
1916
+ "webhooks.create.organizationLabel": "Organizacja (opcjonalnie)",
1917
+ "webhooks.create.submit": "Subskrybuj",
1918
+ "webhooks.create.submitting": "Tworzenie…",
1919
+ "webhooks.create.success": "Webhook utworzony.",
1920
+ "webhooks.create.title": "Subskrybuj zdarzenia",
1921
+ "webhooks.create.urlLabel": "URL odbiorcy",
1922
+ "webhooks.create.urlPlaceholder": "https://example.com/hooks",
1923
+ "webhooks.deliveries.column.attempts": "Próby",
1924
+ "webhooks.deliveries.column.created": "Utworzono",
1925
+ "webhooks.deliveries.column.event": "Zdarzenie",
1926
+ "webhooks.deliveries.column.lastError": "Ostatni błąd",
1927
+ "webhooks.deliveries.column.lastResponse": "Ostatnia odpowiedź",
1928
+ "webhooks.deliveries.column.status": "Status",
1929
+ "webhooks.deliveries.column.webhook": "Webhook",
1930
+ "webhooks.deliveries.empty": "Żadne dostarczenie nie pasuje do tego filtra.",
1931
+ "webhooks.deliveries.filter.all": "Wszystkie statusy",
1932
+ "webhooks.deliveries.filter.deadLettered": "Dead-lettered",
1933
+ "webhooks.deliveries.filter.failed": "Nieudane",
1934
+ "webhooks.deliveries.replayQueued": "Powtórzenie zakolejkowane — nowy wiersz dostarczenia jest oczekujący.",
1935
+ "webhooks.deliveries.title": "Ostatnie dostarczenia",
1936
+ "webhooks.delivery.replayQueued": "Powtórzenie zakolejkowane — nowy wiersz dostarczenia jest oczekujący.",
1937
+ "webhooks.empty": "Brak subskrypcji.",
1938
+ "webhooks.error.create": "Nie udało się utworzyć webhooka.",
1939
+ "webhooks.error.delete": "Nie udało się usunąć webhooka.",
1940
+ "webhooks.error.load": "Nie udało się wczytać webhooków.",
1941
+ "webhooks.error.loadDeliveries": "Nie udało się wczytać dostarczeń.",
1942
+ "webhooks.error.replay": "Powtórzenie nie powiodło się.",
1943
+ "webhooks.error.update": "Nie udało się zaktualizować webhooka.",
1944
+ "webhooks.list.title": "Subskrypcje",
1945
+ "webhooks.organization.platformWide": "Cała platforma",
1946
+ "webhooks.page.description": "Wychodzące powiadomienia podpisywane HMAC. Odbiorcy muszą być idempotentni względem id zdarzenia.",
1947
+ "webhooks.page.title": "Webhooki",
1948
+ "webhooks.revealed.confirm": "Zapisałem",
1949
+ "webhooks.revealed.copied": "Skopiowano!",
1950
+ "webhooks.revealed.copy": "Kopiuj sekret",
1951
+ "webhooks.revealed.title": "Skopiuj teraz ten sekret podpisujący — nie zostanie ponownie pokazany. Przekaż go odbiorcy, aby mógł zweryfikować nagłówek HMAC X-Webhook-Signature-256.",
1952
+ "webhooks.status.active": "Aktywny",
1953
+ "webhooks.status.paused": "Wstrzymany",
1954
+ "platform.modules.recentActivity.shown": "Na pulpicie",
1955
+ "platform.modules.recentActivity.hidden": "Poza pulpitem",
1956
+ "platform.modules.recentActivity.hint": "Czy wpisy modułu {name} pojawiają się na karcie „Ostatnia aktywność” na pulpicie. Sam dziennik audytu pozostaje bez zmian."
1957
+ }