@intlayer/docs 8.3.0-canary.4 → 8.3.1
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.
- package/docs/ar/compiler.md +84 -49
- package/docs/ar/configuration.md +80 -37
- package/docs/ar/intlayer_with_nextjs_16.md +174 -1
- package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ar/intlayer_with_react_router_v7.md +224 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ar/intlayer_with_svelte_kit.md +175 -2
- package/docs/ar/intlayer_with_tanstack.md +176 -1
- package/docs/ar/intlayer_with_vite+preact.md +174 -1
- package/docs/ar/intlayer_with_vite+react.md +174 -1
- package/docs/ar/intlayer_with_vite+solid.md +174 -1
- package/docs/ar/intlayer_with_vite+svelte.md +174 -1
- package/docs/ar/intlayer_with_vite+vue.md +174 -1
- package/docs/de/compiler.md +83 -48
- package/docs/de/configuration.md +434 -212
- package/docs/de/intlayer_with_nextjs_16.md +176 -1
- package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
- package/docs/de/intlayer_with_react_router_v7.md +225 -2
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
- package/docs/de/intlayer_with_svelte_kit.md +158 -2
- package/docs/de/intlayer_with_tanstack.md +159 -1
- package/docs/de/intlayer_with_vite+preact.md +157 -1
- package/docs/de/intlayer_with_vite+react.md +157 -1
- package/docs/de/intlayer_with_vite+solid.md +159 -3
- package/docs/de/intlayer_with_vite+svelte.md +157 -1
- package/docs/de/intlayer_with_vite+vue.md +157 -1
- package/docs/en/compiler.md +60 -33
- package/docs/en/configuration.md +80 -57
- package/docs/en/intlayer_with_nextjs_16.md +176 -0
- package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
- package/docs/en/intlayer_with_react_router_v7.md +159 -0
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
- package/docs/en/intlayer_with_svelte_kit.md +159 -0
- package/docs/en/intlayer_with_tanstack.md +160 -1
- package/docs/en/intlayer_with_vite+preact.md +159 -0
- package/docs/en/intlayer_with_vite+react.md +159 -0
- package/docs/en/intlayer_with_vite+solid.md +148 -27
- package/docs/en/intlayer_with_vite+svelte.md +159 -0
- package/docs/en/intlayer_with_vite+vue.md +142 -41
- package/docs/en-GB/compiler.md +66 -34
- package/docs/en-GB/configuration.md +78 -36
- package/docs/es/compiler.md +83 -48
- package/docs/es/configuration.md +429 -206
- package/docs/es/intlayer_with_adonisjs.md +1 -1
- package/docs/es/intlayer_with_express.md +1 -1
- package/docs/es/intlayer_with_fastify.md +1 -1
- package/docs/es/intlayer_with_hono.md +1 -1
- package/docs/es/intlayer_with_nestjs.md +1 -1
- package/docs/es/intlayer_with_nextjs_16.md +176 -3
- package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +227 -4
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
- package/docs/es/intlayer_with_svelte_kit.md +158 -2
- package/docs/es/intlayer_with_tanstack.md +160 -2
- package/docs/es/intlayer_with_vite+preact.md +162 -6
- package/docs/es/intlayer_with_vite+react.md +160 -4
- package/docs/es/intlayer_with_vite+solid.md +163 -7
- package/docs/es/intlayer_with_vite+svelte.md +157 -1
- package/docs/es/intlayer_with_vite+vue.md +165 -9
- package/docs/fr/compiler.md +81 -46
- package/docs/fr/configuration.md +355 -134
- package/docs/fr/intlayer_with_adonisjs.md +1 -1
- package/docs/fr/intlayer_with_express.md +1 -1
- package/docs/fr/intlayer_with_fastify.md +1 -1
- package/docs/fr/intlayer_with_hono.md +1 -1
- package/docs/fr/intlayer_with_nestjs.md +1 -1
- package/docs/fr/intlayer_with_nextjs_16.md +183 -7
- package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
- package/docs/fr/intlayer_with_react_router_v7.md +229 -3
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
- package/docs/fr/intlayer_with_svelte_kit.md +158 -2
- package/docs/fr/intlayer_with_tanstack.md +159 -1
- package/docs/fr/intlayer_with_vite+preact.md +164 -8
- package/docs/fr/intlayer_with_vite+react.md +162 -6
- package/docs/fr/intlayer_with_vite+solid.md +163 -7
- package/docs/fr/intlayer_with_vite+svelte.md +157 -1
- package/docs/fr/intlayer_with_vite+vue.md +164 -8
- package/docs/hi/compiler.md +81 -46
- package/docs/hi/configuration.md +87 -44
- package/docs/hi/intlayer_with_nextjs_16.md +174 -1
- package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/hi/intlayer_with_react_router_v7.md +224 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/hi/intlayer_with_svelte_kit.md +158 -2
- package/docs/hi/intlayer_with_tanstack.md +159 -1
- package/docs/hi/intlayer_with_vite+preact.md +157 -1
- package/docs/hi/intlayer_with_vite+react.md +157 -1
- package/docs/hi/intlayer_with_vite+solid.md +157 -1
- package/docs/hi/intlayer_with_vite+svelte.md +157 -1
- package/docs/hi/intlayer_with_vite+vue.md +157 -1
- package/docs/id/compiler.md +84 -51
- package/docs/id/configuration.md +83 -45
- package/docs/id/intlayer_with_nextjs_16.md +174 -1
- package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/id/intlayer_with_react_router_v7.md +224 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/id/intlayer_with_svelte_kit.md +158 -2
- package/docs/id/intlayer_with_tanstack.md +159 -1
- package/docs/id/intlayer_with_vite+preact.md +157 -1
- package/docs/id/intlayer_with_vite+react.md +157 -1
- package/docs/id/intlayer_with_vite+solid.md +157 -1
- package/docs/id/intlayer_with_vite+svelte.md +157 -1
- package/docs/id/intlayer_with_vite+vue.md +157 -1
- package/docs/it/compiler.md +81 -46
- package/docs/it/configuration.md +426 -204
- package/docs/it/intlayer_with_nextjs_16.md +174 -1
- package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/it/intlayer_with_react_router_v7.md +225 -2
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/it/intlayer_with_svelte_kit.md +158 -2
- package/docs/it/intlayer_with_tanstack.md +159 -1
- package/docs/it/intlayer_with_vite+preact.md +157 -1
- package/docs/it/intlayer_with_vite+react.md +157 -1
- package/docs/it/intlayer_with_vite+solid.md +159 -3
- package/docs/it/intlayer_with_vite+svelte.md +157 -1
- package/docs/it/intlayer_with_vite+vue.md +157 -1
- package/docs/ja/compiler.md +94 -58
- package/docs/ja/configuration.md +88 -45
- package/docs/ja/intlayer_with_nextjs_16.md +174 -1
- package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ja/intlayer_with_react_router_v7.md +184 -394
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ja/intlayer_with_svelte_kit.md +119 -595
- package/docs/ja/intlayer_with_tanstack.md +131 -642
- package/docs/ja/intlayer_with_vite+preact.md +111 -1231
- package/docs/ja/intlayer_with_vite+react.md +129 -1304
- package/docs/ja/intlayer_with_vite+solid.md +159 -3
- package/docs/ja/intlayer_with_vite+svelte.md +157 -1
- package/docs/ja/intlayer_with_vite+vue.md +157 -1
- package/docs/ko/compiler.md +88 -52
- package/docs/ko/configuration.md +87 -44
- package/docs/ko/intlayer_with_nextjs_16.md +174 -1
- package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ko/intlayer_with_react_router_v7.md +225 -2
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ko/intlayer_with_svelte_kit.md +158 -2
- package/docs/ko/intlayer_with_tanstack.md +159 -1
- package/docs/ko/intlayer_with_vite+preact.md +157 -1
- package/docs/ko/intlayer_with_vite+react.md +157 -1
- package/docs/ko/intlayer_with_vite+solid.md +159 -3
- package/docs/ko/intlayer_with_vite+svelte.md +157 -1
- package/docs/ko/intlayer_with_vite+vue.md +157 -1
- package/docs/pl/compiler.md +84 -51
- package/docs/pl/configuration.md +83 -37
- package/docs/pl/intlayer_with_nextjs_16.md +174 -1
- package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pl/intlayer_with_react_router_v7.md +224 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pl/intlayer_with_svelte_kit.md +158 -2
- package/docs/pl/intlayer_with_tanstack.md +159 -1
- package/docs/pl/intlayer_with_vite+preact.md +157 -1
- package/docs/pl/intlayer_with_vite+react.md +157 -1
- package/docs/pl/intlayer_with_vite+solid.md +157 -1
- package/docs/pl/intlayer_with_vite+svelte.md +157 -1
- package/docs/pl/intlayer_with_vite+vue.md +157 -1
- package/docs/pt/compiler.md +81 -46
- package/docs/pt/configuration.md +404 -194
- package/docs/pt/intlayer_with_nextjs_16.md +174 -1
- package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pt/intlayer_with_react_router_v7.md +224 -1
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pt/intlayer_with_svelte_kit.md +158 -2
- package/docs/pt/intlayer_with_tanstack.md +159 -1
- package/docs/pt/intlayer_with_vite+preact.md +157 -1
- package/docs/pt/intlayer_with_vite+react.md +157 -1
- package/docs/pt/intlayer_with_vite+solid.md +157 -1
- package/docs/pt/intlayer_with_vite+svelte.md +157 -1
- package/docs/pt/intlayer_with_vite+vue.md +157 -1
- package/docs/ru/compiler.md +90 -57
- package/docs/ru/configuration.md +76 -46
- package/docs/ru/intlayer_with_nextjs_16.md +174 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ru/intlayer_with_react_router_v7.md +224 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ru/intlayer_with_svelte_kit.md +158 -2
- package/docs/ru/intlayer_with_tanstack.md +159 -1
- package/docs/ru/intlayer_with_vite+preact.md +157 -1
- package/docs/ru/intlayer_with_vite+react.md +157 -1
- package/docs/ru/intlayer_with_vite+solid.md +157 -1
- package/docs/ru/intlayer_with_vite+svelte.md +157 -1
- package/docs/ru/intlayer_with_vite+vue.md +157 -1
- package/docs/tr/compiler.md +85 -52
- package/docs/tr/configuration.md +83 -40
- package/docs/tr/intlayer_with_nextjs_16.md +174 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/tr/intlayer_with_react_router_v7.md +224 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/tr/intlayer_with_svelte_kit.md +158 -2
- package/docs/tr/intlayer_with_tanstack.md +159 -1
- package/docs/tr/intlayer_with_vite+preact.md +157 -1
- package/docs/tr/intlayer_with_vite+react.md +157 -1
- package/docs/tr/intlayer_with_vite+solid.md +157 -1
- package/docs/tr/intlayer_with_vite+svelte.md +157 -1
- package/docs/tr/intlayer_with_vite+vue.md +157 -1
- package/docs/uk/compiler.md +96 -61
- package/docs/uk/configuration.md +83 -37
- package/docs/uk/intlayer_with_nextjs_16.md +174 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/uk/intlayer_with_react_router_v7.md +224 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/uk/intlayer_with_svelte_kit.md +157 -1
- package/docs/uk/intlayer_with_tanstack.md +159 -1
- package/docs/uk/intlayer_with_vite+preact.md +157 -1
- package/docs/uk/intlayer_with_vite+react.md +157 -1
- package/docs/uk/intlayer_with_vite+solid.md +157 -1
- package/docs/uk/intlayer_with_vite+svelte.md +157 -1
- package/docs/uk/intlayer_with_vite+vue.md +157 -1
- package/docs/vi/compiler.md +85 -50
- package/docs/vi/configuration.md +85 -39
- package/docs/vi/intlayer_with_nextjs_16.md +174 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/vi/intlayer_with_react_router_v7.md +224 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/vi/intlayer_with_svelte_kit.md +158 -2
- package/docs/vi/intlayer_with_tanstack.md +159 -1
- package/docs/vi/intlayer_with_vite+preact.md +157 -1
- package/docs/vi/intlayer_with_vite+react.md +157 -1
- package/docs/vi/intlayer_with_vite+solid.md +157 -1
- package/docs/vi/intlayer_with_vite+svelte.md +157 -1
- package/docs/vi/intlayer_with_vite+vue.md +157 -1
- package/docs/zh/compiler.md +84 -49
- package/docs/zh/configuration.md +80 -37
- package/docs/zh/intlayer_with_adonisjs.md +1 -1
- package/docs/zh/intlayer_with_express.md +1 -1
- package/docs/zh/intlayer_with_fastify.md +1 -1
- package/docs/zh/intlayer_with_hono.md +1 -1
- package/docs/zh/intlayer_with_nestjs.md +1 -1
- package/docs/zh/intlayer_with_nextjs_16.md +174 -1
- package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/zh/intlayer_with_react_router_v7.md +227 -4
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
- package/docs/zh/intlayer_with_svelte_kit.md +158 -2
- package/docs/zh/intlayer_with_tanstack.md +159 -1
- package/docs/zh/intlayer_with_vite+preact.md +159 -3
- package/docs/zh/intlayer_with_vite+react.md +157 -1
- package/docs/zh/intlayer_with_vite+solid.md +161 -5
- package/docs/zh/intlayer_with_vite+svelte.md +157 -1
- package/docs/zh/intlayer_with_vite+vue.md +158 -2
- package/package.json +6 -6
package/docs/pl/compiler.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-09
|
|
3
|
-
updatedAt: 2026-03-
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Intlayer Compiler | Zautomatyzowane wydobywanie treści dla i18n
|
|
5
5
|
description: Zautomatyzuj proces internacjonalizacji za pomocą Intlayer Compiler. Wydobywaj treści bezpośrednio z komponentów dla szybszego i bardziej efektywnego i18n w Vite, Next.js i innych.
|
|
6
6
|
keywords:
|
|
@@ -22,7 +22,7 @@ slugs:
|
|
|
22
22
|
history:
|
|
23
23
|
- version: 8.2.0
|
|
24
24
|
date: 2026-03-09
|
|
25
|
-
changes:
|
|
25
|
+
changes: Aktualizacja opcji kompilatora, dodanie wsparcia dla FilePathPattern
|
|
26
26
|
- version: 8.1.7
|
|
27
27
|
date: 2026-02-25
|
|
28
28
|
changes: Aktualizacja opcji kompilatora
|
|
@@ -136,9 +136,9 @@ const {
|
|
|
136
136
|
module.exports = {
|
|
137
137
|
presets: ["next/babel"],
|
|
138
138
|
plugins: [
|
|
139
|
-
//
|
|
139
|
+
// Wyodrębnij zawartość z komponentów do słowników
|
|
140
140
|
[intlayerExtractBabelPlugin, getExtractPluginOptions()],
|
|
141
|
-
//
|
|
141
|
+
// Optymalizuj importy, zastępując useIntlayer bezpośrednimi importami słowników
|
|
142
142
|
[intlayerOptimizeBabelPlugin, getOptimizePluginOptions()],
|
|
143
143
|
],
|
|
144
144
|
};
|
|
@@ -149,73 +149,83 @@ Ta konfiguracja zapewnia, że zawartość zadeklarowana w Twoich komponentach je
|
|
|
149
149
|
See complete tutorial: [Intlayer Compiler with Next.js](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_compiler.md)
|
|
150
150
|
|
|
151
151
|
</Tab>
|
|
152
|
+
</Tabs>
|
|
152
153
|
|
|
153
154
|
### Własna konfiguracja
|
|
154
155
|
|
|
155
156
|
Aby dostosować zachowanie kompilatora, możesz zaktualizować plik `intlayer.config.ts` w katalogu głównym swojego projektu.
|
|
156
157
|
|
|
157
|
-
|
|
158
|
+
````ts fileName="intlayer.config.ts"
|
|
158
159
|
import { type IntlayerConfig, Locales } from "intlayer";
|
|
159
160
|
|
|
160
161
|
const config: IntlayerConfig = {
|
|
161
162
|
compiler: {
|
|
162
163
|
/**
|
|
164
|
+
* Wskazuje, czy kompilator powinien być włączony.
|
|
163
165
|
* Ustaw na 'build-only', aby pominąć kompilator podczas programowania i przyspieszyć czas uruchamiania.
|
|
164
166
|
*/
|
|
165
167
|
enabled: true,
|
|
166
168
|
|
|
167
169
|
/**
|
|
168
|
-
*
|
|
170
|
+
* Definiuje ścieżkę plików wyjściowych. Zastępuje `outputDir`.
|
|
171
|
+
*
|
|
172
|
+
* - Ścieżki zaczynające się od `./` są rozwiązywane względem katalogu komponentu.
|
|
173
|
+
* - Ścieżki zaczynające się od `/` są rozwiązywane względem katalogu głównego projektu (`baseDir`).
|
|
174
|
+
*
|
|
175
|
+
* - Uwzględnienie zmiennej `{{locale}}` w ścieżce umożliwi generowanie słowników oddzielonych według języka.
|
|
176
|
+
*
|
|
177
|
+
* Przykłady:
|
|
178
|
+
* ```ts
|
|
179
|
+
* {
|
|
180
|
+
* // Utwórz wielojęzyczne pliki .content.ts obok komponentu
|
|
181
|
+
* output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
182
|
+
*
|
|
183
|
+
* // output: './{{fileName}}{{extension}}', // Równoważne użycie szablonu ciągu znaków
|
|
184
|
+
* }
|
|
185
|
+
* ```
|
|
186
|
+
*
|
|
187
|
+
* ```ts
|
|
188
|
+
* {
|
|
189
|
+
* // Utwórz scentralizowane pliki JSON według języka w katalogu głównym projektu
|
|
190
|
+
* output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
|
|
191
|
+
*
|
|
192
|
+
* // output: '/locales/{{locale}}/{{key}}.content.json', // Równoważne użycie szablonu ciągu znaków
|
|
193
|
+
* }
|
|
194
|
+
* ```
|
|
195
|
+
*
|
|
196
|
+
* Lista zmiennych:
|
|
197
|
+
* - `fileName`: Nazwa pliku.
|
|
198
|
+
* - `key`: Klucz zawartości.
|
|
199
|
+
* - `locale`: Język zawartości.
|
|
200
|
+
* - `extension`: Rozszerzenie pliku.
|
|
201
|
+
* - `componentFileName`: Nazwa pliku komponentu.
|
|
202
|
+
* - `componentExtension`: Rozszerzenie pliku komponentu.
|
|
203
|
+
* - `format`: Format słownika.
|
|
204
|
+
* - `componentFormat`: Format słownika komponentu.
|
|
205
|
+
* - `componentDirPath`: Ścieżka do katalogu komponentu.
|
|
169
206
|
*/
|
|
170
|
-
|
|
171
|
-
"**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}",
|
|
172
|
-
"!**/node_modules/**",
|
|
173
|
-
],
|
|
207
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
174
208
|
|
|
175
209
|
/**
|
|
176
|
-
*
|
|
177
|
-
|
|
178
|
-
excludePattern: ["**/node_modules/**"],
|
|
179
|
-
|
|
180
|
-
/**
|
|
181
|
-
* Katalog wyjściowy dla zoptymalizowanych słowników.
|
|
210
|
+
* Wskazuje, czy komponenty powinny być zapisywane po transformacji.
|
|
211
|
+
* W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
182
212
|
*/
|
|
183
|
-
|
|
213
|
+
saveComponents: false,
|
|
184
214
|
|
|
185
215
|
/**
|
|
186
|
-
* Wstaw tylko zawartość do wygenerowanego pliku
|
|
216
|
+
* Wstaw tylko zawartość do wygenerowanego pliku. Przydatne dla wyjścia JSON i18next lub ICU MessageFormat na język.
|
|
217
|
+
*
|
|
218
|
+
* - `output: ({ locale, key }) => `./locale/${locale}/${key}.json`,`
|
|
187
219
|
*/
|
|
188
220
|
noMetadata: false,
|
|
189
221
|
|
|
190
222
|
/**
|
|
191
223
|
* Prefiks klucza słownika
|
|
192
224
|
*/
|
|
193
|
-
dictionaryKeyPrefix: "", //
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* Wskazuje, czy komponenty powinny być zapisywane po transformacji.
|
|
197
|
-
* W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
198
|
-
*/
|
|
199
|
-
saveComponents: false,
|
|
225
|
+
dictionaryKeyPrefix: "", // Dodaj opcjonalny prefiks dla wyekstrahowanych kluczy słownika
|
|
200
226
|
},
|
|
201
227
|
};
|
|
202
|
-
|
|
203
|
-
export default config;
|
|
204
|
-
```
|
|
205
|
-
|
|
206
|
-
### Uzupełnij brakujące tłumaczenia
|
|
207
|
-
|
|
208
|
-
Intlayer udostępnia narzędzie CLI, które pomaga uzupełnić brakujące tłumaczenia. Możesz użyć polecenia `intlayer`, aby przetestować i uzupełnić brakujące tłumaczenia w swoim kodzie.
|
|
209
|
-
|
|
210
|
-
```bash
|
|
211
|
-
npx intlayer test # Sprawdź, czy brakuje tłumaczeń
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
```bash
|
|
215
|
-
npx intlayer fill # Uzupełnij brakujące tłumaczenia
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
> Więcej szczegółów znajdziesz w [dokumentacji CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/cli/ci.md)
|
|
228
|
+
````
|
|
219
229
|
|
|
220
230
|
### Odniesienie do konfiguracji kompilatora
|
|
221
231
|
|
|
@@ -225,36 +235,37 @@ Następujące właściwości można skonfigurować w bloku `compiler` pliku `int
|
|
|
225
235
|
- _Typ_: `boolean | 'build-only'`
|
|
226
236
|
- _Domyślny_: `true`
|
|
227
237
|
- _Opis_: Wskazuje, czy kompilator powinien być włączony.
|
|
238
|
+
|
|
228
239
|
- **dictionaryKeyPrefix**:
|
|
229
240
|
- _Typ_: `string`
|
|
230
|
-
- _Domyślny_: `'
|
|
241
|
+
- _Domyślny_: `''`
|
|
231
242
|
- _Opis_: Prefiks dla wyekstrahowanych kluczy słownika.
|
|
243
|
+
|
|
232
244
|
- **transformPattern**:
|
|
233
245
|
- _Typ_: `string | string[]`
|
|
234
246
|
- _Domyślny_: `['**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}', '!**/node_modules/**']`
|
|
235
|
-
- _Opis_: Wzorce do przeszukiwania kodu w celu optymalizacji.
|
|
247
|
+
- _Opis_: (Zdeprecjonowane: użyj `build.traversePattern` zamiast tego) Wzorce do przeszukiwania kodu w celu optymalizacji.
|
|
248
|
+
|
|
236
249
|
- **excludePattern**:
|
|
237
250
|
- _Typ_: `string | string[]`
|
|
238
251
|
- _Domyślny_: `['**/node_modules/**']`
|
|
239
|
-
- _Opis_: Wzorce do wykluczenia z optymalizacji.
|
|
240
|
-
- **outputDir** (Deprecated):
|
|
241
|
-
- _Typ_: `string`
|
|
242
|
-
- _Domyślny_: `'compiler'`
|
|
243
|
-
- _Opis_: Katalog, w którym będą przechowywane wyekstrahowane słowniki.
|
|
252
|
+
- _Opis_: (Zdeprecjonowane: użyj `build.traversePattern` zamiast tego) Wzorce do wykluczenia z optymalizacji.
|
|
244
253
|
|
|
245
254
|
- **output**:
|
|
246
255
|
- _Typ_: `FilePathPattern`
|
|
247
256
|
- _Domyślny_: `({ key }) => 'compiler/${key}.content.json'`
|
|
248
257
|
- _Opis_: Definiuje ścieżkę plików wyjściowych. Zastępuje `outputDir`. Obsługuje zmienne dynamiczne, takie jak `{{locale}}`, `{{key}}`, `{{fileName}}`, `{{extension}}`, `{{format}}`, `{{dirPath}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{componentFormat}}`. Można ustawić jako ciąg znaków w formacie `'my/{{var}}/path'` lub jako funkcję.
|
|
249
258
|
- _Uwaga_: Ścieżki `./**/*` są rozwiązywane względem komponentu. Ścieżki `/**/*` są rozwiązywane względem `baseDir` Intlayer.
|
|
259
|
+
- _Uwaga_: Jeśli język jest zdefiniowany w ścieżce, słowniki będą generowane na język.
|
|
250
260
|
- _Przykład_: `output: ({ locale, key }) => 'compiler/${locale}/${key}.json'`
|
|
251
261
|
|
|
252
262
|
- **noMetadata**:
|
|
253
263
|
- _Typ_: `boolean`
|
|
254
264
|
- _Domyślny_: `false`
|
|
255
|
-
- _Opis_: Wskazuje, czy metadane powinny być zapisywane w pliku. Jeśli true, kompilator nie będzie zapisywał metadanych słowników (klucza, otoczki zawartości).
|
|
265
|
+
- _Opis_: Wskazuje, czy metadane powinny być zapisywane w pliku. Jeśli true, kompilator nie będzie zapisywał metadanych słowników (klucza, otoczki zawartości). Przydatne dla wyjść JSON i18next lub ICU MessageFormat na lokalizację.
|
|
256
266
|
- _Uwaga_: Przydatne w przypadku korzystania z wtyczki `loadJSON`.
|
|
257
|
-
- _Przykład_:
|
|
267
|
+
- _Przykład_:
|
|
268
|
+
Jeśli `true`:
|
|
258
269
|
```json
|
|
259
270
|
{
|
|
260
271
|
"key": "value"
|
|
@@ -274,3 +285,25 @@ Następujące właściwości można skonfigurować w bloku `compiler` pliku `int
|
|
|
274
285
|
- _Typ_: `boolean`
|
|
275
286
|
- _Domyślny_: `false`
|
|
276
287
|
- _Opis_: Wskazuje, czy komponenty powinny być zapisywane po transformacji.
|
|
288
|
+
|
|
289
|
+
### Uzupełnij brakujące tłumaczenia
|
|
290
|
+
|
|
291
|
+
Intlayer udostępnia narzędzie CLI, które pomaga uzupełnić brakujące tłumaczenia. Możesz użyć polecenia `intlayer`, aby przetestować i uzupełnić brakujące tłumaczenia w swoim kodzie.
|
|
292
|
+
|
|
293
|
+
```bash
|
|
294
|
+
npx intlayer test # Sprawdź, czy brakuje tłumaczeń
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
```bash
|
|
298
|
+
npx intlayer fill # Uzupełnij brakujące tłumaczenia
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### Ekstrakcja
|
|
302
|
+
|
|
303
|
+
Intlayer udostępnia narzędzie CLI do wyodrębniania treści z Twojego kodu. Możesz użyć polecenia `intlayer extract`, aby wyodrębnić treść ze swojego kodu.
|
|
304
|
+
|
|
305
|
+
```bash
|
|
306
|
+
npx intlayer extract
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
> Więcej szczegółów znajdziesz w [dokumentacji CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/cli/index.md)
|
package/docs/pl/configuration.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-13
|
|
3
|
-
updatedAt: 2026-03-
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Konfiguracja
|
|
5
5
|
description: Dowiedz się, jak skonfigurować Intlayer dla swojej aplikacji. Zrozum różne ustawienia i opcje dostępne do dostosowania Intlayer do Twoich potrzeb.
|
|
6
6
|
keywords:
|
|
@@ -15,7 +15,7 @@ slugs:
|
|
|
15
15
|
- configuration
|
|
16
16
|
history:
|
|
17
17
|
- version: 8.3.0
|
|
18
|
-
|
|
18
|
+
date: 2026-03-11
|
|
19
19
|
changes: Przenieś 'baseDir' z konfiguracji 'content' do konfiguracji 'system'
|
|
20
20
|
- version: 8.2.0
|
|
21
21
|
date: 2026-03-09
|
|
@@ -107,7 +107,7 @@ Intlayer obsługuje formaty plików konfiguracyjnych JSON, JS, MJS oraz TS:
|
|
|
107
107
|
|
|
108
108
|
## Przykładowy plik konfiguracyjny
|
|
109
109
|
|
|
110
|
-
|
|
110
|
+
````typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
111
111
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
112
112
|
import { nextjsRewrite } from "intlayer/routing";
|
|
113
113
|
import { z } from "zod";
|
|
@@ -205,7 +205,7 @@ const config: IntlayerConfig = {
|
|
|
205
205
|
* Options: 'cookie', 'localStorage', 'sessionStorage', 'header', or an array of these.
|
|
206
206
|
* Default: ['cookie', 'header']
|
|
207
207
|
*/
|
|
208
|
-
storage: "cookie",
|
|
208
|
+
storage: ["cookie", "header"],
|
|
209
209
|
|
|
210
210
|
/**
|
|
211
211
|
* Base path for the application URLs.
|
|
@@ -342,6 +342,17 @@ const config: IntlayerConfig = {
|
|
|
342
342
|
* Base URL for the AI API.
|
|
343
343
|
*/
|
|
344
344
|
baseURL: "http://localhost:3000",
|
|
345
|
+
|
|
346
|
+
/**
|
|
347
|
+
* Serializacja danych
|
|
348
|
+
*
|
|
349
|
+
* Opcje:
|
|
350
|
+
* - "json": Standardowa, niezawodna; zużywa więcej tokenów.
|
|
351
|
+
* - "toon": Mniej tokenów, mniej spójna niż JSON.
|
|
352
|
+
*
|
|
353
|
+
* Domyślnie: "json"
|
|
354
|
+
*/
|
|
355
|
+
dataSerialization: "json",
|
|
345
356
|
},
|
|
346
357
|
|
|
347
358
|
/**
|
|
@@ -441,42 +452,70 @@ const config: IntlayerConfig = {
|
|
|
441
452
|
compiler: {
|
|
442
453
|
/**
|
|
443
454
|
* Wskazuje, czy kompilator powinien być włączony.
|
|
455
|
+
*
|
|
456
|
+
* - false : Wyłącza kompilator.
|
|
457
|
+
* - true : Włącza kompilator.
|
|
458
|
+
* - "build-only" : Pomija kompilator podczas programowania, aby przyspieszyć czas uruchamiania.
|
|
459
|
+
*
|
|
460
|
+
* Wartość domyślna : false
|
|
444
461
|
*/
|
|
445
462
|
enabled: true,
|
|
446
463
|
|
|
447
464
|
/**
|
|
448
|
-
*
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
*
|
|
465
|
+
* Definiuje ścieżkę plików wyjściowych. Zastępuje `outputDir`.
|
|
466
|
+
*
|
|
467
|
+
* - Ścieżki zaczynające się od `./` są rozwiązywane względem katalogu komponentu.
|
|
468
|
+
* - Ścieżki zaczynające się od `/` są rozwiązywane względem katalogu głównego projektu (`baseDir`).
|
|
469
|
+
*
|
|
470
|
+
* - Uwzględnienie zmiennej `{{locale}}` w ścieżce umożliwi generowanie słowników oddzielonych według języka.
|
|
471
|
+
*
|
|
472
|
+
* Przykład:
|
|
473
|
+
* ```ts
|
|
474
|
+
* {
|
|
475
|
+
* // Utwórz wielojęzyczne pliki .content.ts obok komponentu
|
|
476
|
+
* output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
477
|
+
*
|
|
478
|
+
* // output: './{{fileName}}{{extension}}', // Równoważne użycie szablonu ciągu znaków
|
|
479
|
+
* }
|
|
480
|
+
* ```
|
|
481
|
+
*
|
|
482
|
+
* ```ts
|
|
483
|
+
* {
|
|
484
|
+
* // Utwórz scentralizowane pliki JSON według języka w katalogu głównym projektu
|
|
485
|
+
* output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
|
|
486
|
+
*
|
|
487
|
+
* // output: '/locales/{{locale}}/{{key}}.content.json', // Równoważne użycie szablonu ciągu znaków
|
|
488
|
+
* }
|
|
489
|
+
* ```
|
|
490
|
+
*
|
|
491
|
+
* Lista zmiennych:
|
|
492
|
+
* - `fileName`: Nazwa pliku.
|
|
493
|
+
* - `key`: Klucz zawartości.
|
|
494
|
+
* - `locale`: Język zawartości.
|
|
495
|
+
* - `extension`: Rozszerzenie pliku.
|
|
496
|
+
* - `componentFileName`: Nazwa pliku komponentu.
|
|
497
|
+
* - `componentExtension`: Rozszerzenie pliku komponentu.
|
|
498
|
+
* - `format`: Format słownika.
|
|
499
|
+
* - `componentFormat`: Format słownika komponentu.
|
|
500
|
+
* - `componentDirPath`: Ścieżka do katalogu komponentu.
|
|
457
501
|
*/
|
|
458
|
-
|
|
502
|
+
output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
|
|
459
503
|
|
|
460
504
|
/**
|
|
461
|
-
*
|
|
505
|
+
* Wskazuje, czy komponenty powinny być zapisywane po transformacji.
|
|
506
|
+
* W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
462
507
|
*/
|
|
463
|
-
|
|
508
|
+
saveComponents: false,
|
|
464
509
|
|
|
465
510
|
/**
|
|
466
|
-
* Wstaw tylko zawartość do wygenerowanego pliku
|
|
511
|
+
* Wstaw tylko zawartość do wygenerowanego pliku. Przydatne dla wyjść JSON i18next lub ICU MessageFormat na lokalizację.
|
|
467
512
|
*/
|
|
468
513
|
noMetadata: false,
|
|
469
514
|
|
|
470
515
|
/**
|
|
471
516
|
* Prefiks klucza słownika
|
|
472
517
|
*/
|
|
473
|
-
dictionaryKeyPrefix: "", //
|
|
474
|
-
|
|
475
|
-
/**
|
|
476
|
-
* Wskazuje, czy komponenty powinny być zapisywane po transformacji.
|
|
477
|
-
* W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
478
|
-
*/
|
|
479
|
-
saveComponents: false,
|
|
518
|
+
dictionaryKeyPrefix: "", // Dodaj opcjonalny prefiks dla wyodrębnionych kluczy słownika
|
|
480
519
|
},
|
|
481
520
|
|
|
482
521
|
/**
|
|
@@ -495,7 +534,7 @@ const config: IntlayerConfig = {
|
|
|
495
534
|
};
|
|
496
535
|
|
|
497
536
|
export default config;
|
|
498
|
-
|
|
537
|
+
````
|
|
499
538
|
|
|
500
539
|
## Odniesienie do konfiguracji
|
|
501
540
|
|
|
@@ -1140,7 +1179,7 @@ Ustawienia kontrolujące kompilator Intlayer, który wyodrębnia słowniki bezpo
|
|
|
1140
1179
|
|
|
1141
1180
|
- **dictionaryKeyPrefix**:
|
|
1142
1181
|
- _Typ_: `string`
|
|
1143
|
-
- _Domyślnie_: `'
|
|
1182
|
+
- _Domyślnie_: `''`
|
|
1144
1183
|
- _Opis_: Prefiks dla wyodrębnionych kluczy słownika.
|
|
1145
1184
|
- _Przykład_: `'my-key-'`
|
|
1146
1185
|
- _Uwaga_: Podczas wyodrębniania słowników klucz jest generowany na podstawie nazwy pliku. Ten prefiks jest dodawany do wygenerowanego klucza, aby zapobiec konfliktom.
|
|
@@ -1164,30 +1203,37 @@ Ustawienia kontrolujące kompilator Intlayer, który wyodrębnia słowniki bezpo
|
|
|
1164
1203
|
- _Opis_: Wzorce określające, które pliki powinny być wykluczone podczas optymalizacji.
|
|
1165
1204
|
- _Przykład_: `['**/node_modules/**', '!**/node_modules/react/**']`
|
|
1166
1205
|
|
|
1167
|
-
- **outputDir**:
|
|
1168
|
-
- _Typ_: `string`
|
|
1169
|
-
- _Domyślnie_: `'compiler'`
|
|
1170
|
-
- _Opis_: Katalog, w którym będą przechowywane wyodrębnione słowniki, względem ścieżki bazowej projektu.
|
|
1171
|
-
|
|
1172
1206
|
- **output**:
|
|
1173
1207
|
- _Typ_: `FilePathPattern`
|
|
1174
|
-
- _Domyślny_: `
|
|
1175
|
-
- _Opis_: Definiuje ścieżkę plików wyjściowych. Zastępuje `outputDir`. Obsługuje zmienne dynamiczne
|
|
1176
|
-
- _Uwaga_: Ścieżki
|
|
1177
|
-
-
|
|
1208
|
+
- _Domyślny_: `undefined`
|
|
1209
|
+
- _Opis_: Definiuje ścieżkę plików wyjściowych. Zastępuje `outputDir`. Obsługuje zmienne dynamiczne poprzez szablony ciągów znaków lub funkcję. Obsługiwane zmienne: `{{fileName}}`, `{{key}}`, `{{locale}}`, `{{extension}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{format}}`, `{{componentFormat}}` oraz `{{componentDirPath}}`.
|
|
1210
|
+
- _Uwaga_: Ścieżki zaczynające się od `./` są rozwiązywane względem katalogu komponentu. Ścieżki zaczynające się od `/` są rozwiązywane względem katalogu głównego projektu (`baseDir`).
|
|
1211
|
+
- _Uwaga_: Uwzględnienie zmiennej `{{locale}}` w ścieżce umożliwi generowanie słowników oddzielonych według języka.
|
|
1212
|
+
- _Przykład_:
|
|
1213
|
+
- **Plik wielojęzyczny obok komponentu**:
|
|
1214
|
+
- Ciąg znaków: `'./{{fileName}}{{extension}}'`
|
|
1215
|
+
- Funkcja: `({ fileName, extension }) => \`./${fileName}${extension}\``
|
|
1216
|
+
|
|
1217
|
+
- **Zcentralizowane pliki JSON według języka**:
|
|
1218
|
+
- Ciąg znaków: `'/locales/{{locale}}/{{key}}.content.json'`
|
|
1219
|
+
- Funkcja: `({ key, locale }) => \`/locales/${locale}/${key}.content.json\``
|
|
1178
1220
|
|
|
1179
1221
|
- **noMetadata**:
|
|
1180
1222
|
- _Typ_: `boolean`
|
|
1181
1223
|
- _Domyślny_: `false`
|
|
1182
|
-
- _Opis_: Wskazuje, czy metadane powinny być zapisywane w pliku. Jeśli true, kompilator nie będzie zapisywał metadanych słowników (klucza, otoczki zawartości).
|
|
1224
|
+
- _Opis_: Wskazuje, czy metadane powinny być zapisywane w pliku. Jeśli true, kompilator nie będzie zapisywał metadanych słowników (klucza, otoczki zawartości). Przydatne dla wyjść JSON i18next lub ICU MessageFormat na lokalizację.
|
|
1183
1225
|
- _Uwaga_: Przydatne w przypadku korzystania z wtyczki `loadJSON`.
|
|
1184
|
-
- _Przykład_:
|
|
1226
|
+
- _Przykład_:
|
|
1227
|
+
Jeśli `true`:
|
|
1228
|
+
|
|
1185
1229
|
```json
|
|
1186
1230
|
{
|
|
1187
1231
|
"key": "value"
|
|
1188
1232
|
}
|
|
1189
1233
|
```
|
|
1234
|
+
|
|
1190
1235
|
Jeśli `false`:
|
|
1236
|
+
|
|
1191
1237
|
```json
|
|
1192
1238
|
{
|
|
1193
1239
|
"key": "value",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-12-06
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Next.js i18n - Jak przetłumaczyć aplikację Next.js 16 w 2026
|
|
5
5
|
description: Odkryj, jak uczynić swoją stronę Next.js 16 wielojęzyczną. Postępuj zgodnie z dokumentacją, aby zinternacjonalizować (i18n) i przetłumaczyć ją.
|
|
6
6
|
keywords:
|
|
@@ -1693,6 +1693,179 @@ To rozszerzenie zapewnia:
|
|
|
1693
1693
|
|
|
1694
1694
|
Aby uzyskać więcej informacji na temat korzystania z rozszerzenia, zapoznaj się z [dokumentacją rozszerzenia Intlayer VS Code](https://intlayer.org/doc/vs-code-extension).
|
|
1695
1695
|
|
|
1696
|
+
### (Opcjonalnie) Krok 14 : Wyodrębnij zawartość swoich komponentów
|
|
1697
|
+
|
|
1698
|
+
Jeśli masz istniejącą bazę kodu, transformacja tysięcy plików może być czasochłonna.
|
|
1699
|
+
|
|
1700
|
+
Aby ułatwić ten proces, Intlayer proponuje [kompilator](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/compiler.md) / [ekstraktor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/cli/extract.md), aby przetransformować komponenty i wyodrębnić zawartość.
|
|
1701
|
+
|
|
1702
|
+
Aby go skonfigurować, możesz dodać sekcję `compiler` w pliku `intlayer.config.ts`:
|
|
1703
|
+
|
|
1704
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1705
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1706
|
+
|
|
1707
|
+
const config: IntlayerConfig = {
|
|
1708
|
+
// ... Reszta Twojej konfiguracji
|
|
1709
|
+
compiler: {
|
|
1710
|
+
/**
|
|
1711
|
+
* Wskazuje, czy kompilator powinien być włączony.
|
|
1712
|
+
*/
|
|
1713
|
+
enabled: true,
|
|
1714
|
+
|
|
1715
|
+
/**
|
|
1716
|
+
* Definiuje ścieżkę plików wyjściowych
|
|
1717
|
+
*/
|
|
1718
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1719
|
+
|
|
1720
|
+
/**
|
|
1721
|
+
* Wskazuje, czy komponenty powinny zostać zapisane po transformacji. W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
1722
|
+
*/
|
|
1723
|
+
saveComponents: false,
|
|
1724
|
+
|
|
1725
|
+
/**
|
|
1726
|
+
* Prefiks klucza słownika
|
|
1727
|
+
*/
|
|
1728
|
+
dictionaryKeyPrefix: "",
|
|
1729
|
+
},
|
|
1730
|
+
};
|
|
1731
|
+
|
|
1732
|
+
export default config;
|
|
1733
|
+
```
|
|
1734
|
+
|
|
1735
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1736
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1737
|
+
const config = {
|
|
1738
|
+
// ... Reszta Twojej konfiguracji
|
|
1739
|
+
compiler: {
|
|
1740
|
+
/**
|
|
1741
|
+
* Wskazuje, czy kompilator powinien być włączony.
|
|
1742
|
+
*/
|
|
1743
|
+
enabled: true,
|
|
1744
|
+
|
|
1745
|
+
/**
|
|
1746
|
+
* Definiuje ścieżkę plików wyjściowych
|
|
1747
|
+
*/
|
|
1748
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1749
|
+
|
|
1750
|
+
/**
|
|
1751
|
+
* Wskazuje, czy komponenty powinny zostać zapisane po transformacji. W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
1752
|
+
*/
|
|
1753
|
+
saveComponents: false,
|
|
1754
|
+
|
|
1755
|
+
/**
|
|
1756
|
+
* Prefiks klucza słownika
|
|
1757
|
+
*/
|
|
1758
|
+
dictionaryKeyPrefix: "",
|
|
1759
|
+
},
|
|
1760
|
+
};
|
|
1761
|
+
|
|
1762
|
+
export default config;
|
|
1763
|
+
```
|
|
1764
|
+
|
|
1765
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1766
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1767
|
+
const config = {
|
|
1768
|
+
// ... Reszta Twojej konfiguracji
|
|
1769
|
+
compiler: {
|
|
1770
|
+
/**
|
|
1771
|
+
* Wskazuje, czy kompilator powinien być włączony.
|
|
1772
|
+
*/
|
|
1773
|
+
enabled: true,
|
|
1774
|
+
|
|
1775
|
+
/**
|
|
1776
|
+
* Definiuje ścieżkę plików wyjściowych
|
|
1777
|
+
*/
|
|
1778
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1779
|
+
|
|
1780
|
+
/**
|
|
1781
|
+
* Wskazuje, czy komponenty powinny zostać zapisane po transformacji. W ten sposób kompilator można uruchomić tylko raz, aby przetransformować aplikację, a następnie go usunąć.
|
|
1782
|
+
*/
|
|
1783
|
+
saveComponents: false,
|
|
1784
|
+
|
|
1785
|
+
/**
|
|
1786
|
+
* Prefiks klucza słownika
|
|
1787
|
+
*/
|
|
1788
|
+
dictionaryKeyPrefix: "",
|
|
1789
|
+
},
|
|
1790
|
+
};
|
|
1791
|
+
|
|
1792
|
+
module.exports = config;
|
|
1793
|
+
```
|
|
1794
|
+
|
|
1795
|
+
<Tabs>
|
|
1796
|
+
<Tab value='Polecenie wyodrębniania'>
|
|
1797
|
+
|
|
1798
|
+
Uruchom ekstraktor, aby przetransformować komponenty i wyodrębnić zawartość
|
|
1799
|
+
|
|
1800
|
+
```bash packageManager="npm"
|
|
1801
|
+
npx intlayer extract
|
|
1802
|
+
```
|
|
1803
|
+
|
|
1804
|
+
```bash packageManager="pnpm"
|
|
1805
|
+
pnpm intlayer extract
|
|
1806
|
+
```
|
|
1807
|
+
|
|
1808
|
+
```bash packageManager="yarn"
|
|
1809
|
+
yarn intlayer extract
|
|
1810
|
+
```
|
|
1811
|
+
|
|
1812
|
+
```bash packageManager="bun"
|
|
1813
|
+
bunx intlayer extract
|
|
1814
|
+
```
|
|
1815
|
+
|
|
1816
|
+
</Tab>
|
|
1817
|
+
<Tab value='Kompilator Babel'>
|
|
1818
|
+
|
|
1819
|
+
```bash packageManager="npm"
|
|
1820
|
+
npm install @intlayer/babel --save-dev
|
|
1821
|
+
```
|
|
1822
|
+
|
|
1823
|
+
```bash packageManager="pnpm"
|
|
1824
|
+
pnpm add @intlayer/babel --save-dev
|
|
1825
|
+
```
|
|
1826
|
+
|
|
1827
|
+
```bash packageManager="yarn"
|
|
1828
|
+
yarn add @intlayer/babel --save-dev
|
|
1829
|
+
```
|
|
1830
|
+
|
|
1831
|
+
```bash packageManager="bun"
|
|
1832
|
+
bun add @intlayer/babel --dev
|
|
1833
|
+
```
|
|
1834
|
+
|
|
1835
|
+
```js fileName="babel.config.js"
|
|
1836
|
+
const {
|
|
1837
|
+
intlayerExtractBabelPlugin,
|
|
1838
|
+
getExtractPluginOptions,
|
|
1839
|
+
} = require("@intlayer/babel");
|
|
1840
|
+
|
|
1841
|
+
module.exports = {
|
|
1842
|
+
presets: ["next/babel"],
|
|
1843
|
+
plugins: [
|
|
1844
|
+
// Wyodrębnij zawartość z komponentów do słowników
|
|
1845
|
+
[intlayerExtractBabelPlugin, getExtractPluginOptions()],
|
|
1846
|
+
],
|
|
1847
|
+
};
|
|
1848
|
+
```
|
|
1849
|
+
|
|
1850
|
+
```bash packageManager="npm"
|
|
1851
|
+
npm run build # Lub npm run dev
|
|
1852
|
+
```
|
|
1853
|
+
|
|
1854
|
+
```bash packageManager="pnpm"
|
|
1855
|
+
pnpm run build # Or pnpm run dev
|
|
1856
|
+
```
|
|
1857
|
+
|
|
1858
|
+
```bash packageManager="yarn"
|
|
1859
|
+
yarn build # Or yarn dev
|
|
1860
|
+
```
|
|
1861
|
+
|
|
1862
|
+
```bash packageManager="bun"
|
|
1863
|
+
bun run build # Or bun run dev
|
|
1864
|
+
```
|
|
1865
|
+
|
|
1866
|
+
</Tab>
|
|
1867
|
+
</Tabs>
|
|
1868
|
+
|
|
1696
1869
|
### Idź dalej
|
|
1697
1870
|
|
|
1698
1871
|
Aby pójść dalej, możesz zaimplementować [edytor wizualny](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/intlayer_visual_editor.md) lub wyeksportować swoją zawartość za pomocą [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/intlayer_CMS.md).
|