@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.
Files changed (240) hide show
  1. package/docs/ar/compiler.md +84 -49
  2. package/docs/ar/configuration.md +80 -37
  3. package/docs/ar/intlayer_with_nextjs_16.md +174 -1
  4. package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
  5. package/docs/ar/intlayer_with_react_router_v7.md +224 -1
  6. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
  7. package/docs/ar/intlayer_with_svelte_kit.md +175 -2
  8. package/docs/ar/intlayer_with_tanstack.md +176 -1
  9. package/docs/ar/intlayer_with_vite+preact.md +174 -1
  10. package/docs/ar/intlayer_with_vite+react.md +174 -1
  11. package/docs/ar/intlayer_with_vite+solid.md +174 -1
  12. package/docs/ar/intlayer_with_vite+svelte.md +174 -1
  13. package/docs/ar/intlayer_with_vite+vue.md +174 -1
  14. package/docs/de/compiler.md +83 -48
  15. package/docs/de/configuration.md +434 -212
  16. package/docs/de/intlayer_with_nextjs_16.md +176 -1
  17. package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
  18. package/docs/de/intlayer_with_react_router_v7.md +225 -2
  19. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
  20. package/docs/de/intlayer_with_svelte_kit.md +158 -2
  21. package/docs/de/intlayer_with_tanstack.md +159 -1
  22. package/docs/de/intlayer_with_vite+preact.md +157 -1
  23. package/docs/de/intlayer_with_vite+react.md +157 -1
  24. package/docs/de/intlayer_with_vite+solid.md +159 -3
  25. package/docs/de/intlayer_with_vite+svelte.md +157 -1
  26. package/docs/de/intlayer_with_vite+vue.md +157 -1
  27. package/docs/en/compiler.md +60 -33
  28. package/docs/en/configuration.md +80 -57
  29. package/docs/en/intlayer_with_nextjs_16.md +176 -0
  30. package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
  31. package/docs/en/intlayer_with_react_router_v7.md +159 -0
  32. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
  33. package/docs/en/intlayer_with_svelte_kit.md +159 -0
  34. package/docs/en/intlayer_with_tanstack.md +160 -1
  35. package/docs/en/intlayer_with_vite+preact.md +159 -0
  36. package/docs/en/intlayer_with_vite+react.md +159 -0
  37. package/docs/en/intlayer_with_vite+solid.md +148 -27
  38. package/docs/en/intlayer_with_vite+svelte.md +159 -0
  39. package/docs/en/intlayer_with_vite+vue.md +142 -41
  40. package/docs/en-GB/compiler.md +66 -34
  41. package/docs/en-GB/configuration.md +78 -36
  42. package/docs/es/compiler.md +83 -48
  43. package/docs/es/configuration.md +429 -206
  44. package/docs/es/intlayer_with_adonisjs.md +1 -1
  45. package/docs/es/intlayer_with_express.md +1 -1
  46. package/docs/es/intlayer_with_fastify.md +1 -1
  47. package/docs/es/intlayer_with_hono.md +1 -1
  48. package/docs/es/intlayer_with_nestjs.md +1 -1
  49. package/docs/es/intlayer_with_nextjs_16.md +176 -3
  50. package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
  51. package/docs/es/intlayer_with_nuxt.md +1 -1
  52. package/docs/es/intlayer_with_react_router_v7.md +227 -4
  53. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
  54. package/docs/es/intlayer_with_svelte_kit.md +158 -2
  55. package/docs/es/intlayer_with_tanstack.md +160 -2
  56. package/docs/es/intlayer_with_vite+preact.md +162 -6
  57. package/docs/es/intlayer_with_vite+react.md +160 -4
  58. package/docs/es/intlayer_with_vite+solid.md +163 -7
  59. package/docs/es/intlayer_with_vite+svelte.md +157 -1
  60. package/docs/es/intlayer_with_vite+vue.md +165 -9
  61. package/docs/fr/compiler.md +81 -46
  62. package/docs/fr/configuration.md +355 -134
  63. package/docs/fr/intlayer_with_adonisjs.md +1 -1
  64. package/docs/fr/intlayer_with_express.md +1 -1
  65. package/docs/fr/intlayer_with_fastify.md +1 -1
  66. package/docs/fr/intlayer_with_hono.md +1 -1
  67. package/docs/fr/intlayer_with_nestjs.md +1 -1
  68. package/docs/fr/intlayer_with_nextjs_16.md +183 -7
  69. package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
  70. package/docs/fr/intlayer_with_react_router_v7.md +229 -3
  71. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
  72. package/docs/fr/intlayer_with_svelte_kit.md +158 -2
  73. package/docs/fr/intlayer_with_tanstack.md +159 -1
  74. package/docs/fr/intlayer_with_vite+preact.md +164 -8
  75. package/docs/fr/intlayer_with_vite+react.md +162 -6
  76. package/docs/fr/intlayer_with_vite+solid.md +163 -7
  77. package/docs/fr/intlayer_with_vite+svelte.md +157 -1
  78. package/docs/fr/intlayer_with_vite+vue.md +164 -8
  79. package/docs/hi/compiler.md +81 -46
  80. package/docs/hi/configuration.md +87 -44
  81. package/docs/hi/intlayer_with_nextjs_16.md +174 -1
  82. package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
  83. package/docs/hi/intlayer_with_react_router_v7.md +224 -1
  84. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  85. package/docs/hi/intlayer_with_svelte_kit.md +158 -2
  86. package/docs/hi/intlayer_with_tanstack.md +159 -1
  87. package/docs/hi/intlayer_with_vite+preact.md +157 -1
  88. package/docs/hi/intlayer_with_vite+react.md +157 -1
  89. package/docs/hi/intlayer_with_vite+solid.md +157 -1
  90. package/docs/hi/intlayer_with_vite+svelte.md +157 -1
  91. package/docs/hi/intlayer_with_vite+vue.md +157 -1
  92. package/docs/id/compiler.md +84 -51
  93. package/docs/id/configuration.md +83 -45
  94. package/docs/id/intlayer_with_nextjs_16.md +174 -1
  95. package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
  96. package/docs/id/intlayer_with_react_router_v7.md +224 -1
  97. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
  98. package/docs/id/intlayer_with_svelte_kit.md +158 -2
  99. package/docs/id/intlayer_with_tanstack.md +159 -1
  100. package/docs/id/intlayer_with_vite+preact.md +157 -1
  101. package/docs/id/intlayer_with_vite+react.md +157 -1
  102. package/docs/id/intlayer_with_vite+solid.md +157 -1
  103. package/docs/id/intlayer_with_vite+svelte.md +157 -1
  104. package/docs/id/intlayer_with_vite+vue.md +157 -1
  105. package/docs/it/compiler.md +81 -46
  106. package/docs/it/configuration.md +426 -204
  107. package/docs/it/intlayer_with_nextjs_16.md +174 -1
  108. package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
  109. package/docs/it/intlayer_with_react_router_v7.md +225 -2
  110. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
  111. package/docs/it/intlayer_with_svelte_kit.md +158 -2
  112. package/docs/it/intlayer_with_tanstack.md +159 -1
  113. package/docs/it/intlayer_with_vite+preact.md +157 -1
  114. package/docs/it/intlayer_with_vite+react.md +157 -1
  115. package/docs/it/intlayer_with_vite+solid.md +159 -3
  116. package/docs/it/intlayer_with_vite+svelte.md +157 -1
  117. package/docs/it/intlayer_with_vite+vue.md +157 -1
  118. package/docs/ja/compiler.md +94 -58
  119. package/docs/ja/configuration.md +88 -45
  120. package/docs/ja/intlayer_with_nextjs_16.md +174 -1
  121. package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
  122. package/docs/ja/intlayer_with_react_router_v7.md +184 -394
  123. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
  124. package/docs/ja/intlayer_with_svelte_kit.md +119 -595
  125. package/docs/ja/intlayer_with_tanstack.md +131 -642
  126. package/docs/ja/intlayer_with_vite+preact.md +111 -1231
  127. package/docs/ja/intlayer_with_vite+react.md +129 -1304
  128. package/docs/ja/intlayer_with_vite+solid.md +159 -3
  129. package/docs/ja/intlayer_with_vite+svelte.md +157 -1
  130. package/docs/ja/intlayer_with_vite+vue.md +157 -1
  131. package/docs/ko/compiler.md +88 -52
  132. package/docs/ko/configuration.md +87 -44
  133. package/docs/ko/intlayer_with_nextjs_16.md +174 -1
  134. package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
  135. package/docs/ko/intlayer_with_react_router_v7.md +225 -2
  136. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
  137. package/docs/ko/intlayer_with_svelte_kit.md +158 -2
  138. package/docs/ko/intlayer_with_tanstack.md +159 -1
  139. package/docs/ko/intlayer_with_vite+preact.md +157 -1
  140. package/docs/ko/intlayer_with_vite+react.md +157 -1
  141. package/docs/ko/intlayer_with_vite+solid.md +159 -3
  142. package/docs/ko/intlayer_with_vite+svelte.md +157 -1
  143. package/docs/ko/intlayer_with_vite+vue.md +157 -1
  144. package/docs/pl/compiler.md +84 -51
  145. package/docs/pl/configuration.md +83 -37
  146. package/docs/pl/intlayer_with_nextjs_16.md +174 -1
  147. package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
  148. package/docs/pl/intlayer_with_react_router_v7.md +224 -1
  149. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
  150. package/docs/pl/intlayer_with_svelte_kit.md +158 -2
  151. package/docs/pl/intlayer_with_tanstack.md +159 -1
  152. package/docs/pl/intlayer_with_vite+preact.md +157 -1
  153. package/docs/pl/intlayer_with_vite+react.md +157 -1
  154. package/docs/pl/intlayer_with_vite+solid.md +157 -1
  155. package/docs/pl/intlayer_with_vite+svelte.md +157 -1
  156. package/docs/pl/intlayer_with_vite+vue.md +157 -1
  157. package/docs/pt/compiler.md +81 -46
  158. package/docs/pt/configuration.md +404 -194
  159. package/docs/pt/intlayer_with_nextjs_16.md +174 -1
  160. package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
  161. package/docs/pt/intlayer_with_react_router_v7.md +224 -1
  162. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
  163. package/docs/pt/intlayer_with_svelte_kit.md +158 -2
  164. package/docs/pt/intlayer_with_tanstack.md +159 -1
  165. package/docs/pt/intlayer_with_vite+preact.md +157 -1
  166. package/docs/pt/intlayer_with_vite+react.md +157 -1
  167. package/docs/pt/intlayer_with_vite+solid.md +157 -1
  168. package/docs/pt/intlayer_with_vite+svelte.md +157 -1
  169. package/docs/pt/intlayer_with_vite+vue.md +157 -1
  170. package/docs/ru/compiler.md +90 -57
  171. package/docs/ru/configuration.md +76 -46
  172. package/docs/ru/intlayer_with_nextjs_16.md +174 -1
  173. package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
  174. package/docs/ru/intlayer_with_react_router_v7.md +224 -1
  175. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
  176. package/docs/ru/intlayer_with_svelte_kit.md +158 -2
  177. package/docs/ru/intlayer_with_tanstack.md +159 -1
  178. package/docs/ru/intlayer_with_vite+preact.md +157 -1
  179. package/docs/ru/intlayer_with_vite+react.md +157 -1
  180. package/docs/ru/intlayer_with_vite+solid.md +157 -1
  181. package/docs/ru/intlayer_with_vite+svelte.md +157 -1
  182. package/docs/ru/intlayer_with_vite+vue.md +157 -1
  183. package/docs/tr/compiler.md +85 -52
  184. package/docs/tr/configuration.md +83 -40
  185. package/docs/tr/intlayer_with_nextjs_16.md +174 -1
  186. package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
  187. package/docs/tr/intlayer_with_react_router_v7.md +224 -1
  188. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
  189. package/docs/tr/intlayer_with_svelte_kit.md +158 -2
  190. package/docs/tr/intlayer_with_tanstack.md +159 -1
  191. package/docs/tr/intlayer_with_vite+preact.md +157 -1
  192. package/docs/tr/intlayer_with_vite+react.md +157 -1
  193. package/docs/tr/intlayer_with_vite+solid.md +157 -1
  194. package/docs/tr/intlayer_with_vite+svelte.md +157 -1
  195. package/docs/tr/intlayer_with_vite+vue.md +157 -1
  196. package/docs/uk/compiler.md +96 -61
  197. package/docs/uk/configuration.md +83 -37
  198. package/docs/uk/intlayer_with_nextjs_16.md +174 -1
  199. package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
  200. package/docs/uk/intlayer_with_react_router_v7.md +224 -1
  201. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
  202. package/docs/uk/intlayer_with_svelte_kit.md +157 -1
  203. package/docs/uk/intlayer_with_tanstack.md +159 -1
  204. package/docs/uk/intlayer_with_vite+preact.md +157 -1
  205. package/docs/uk/intlayer_with_vite+react.md +157 -1
  206. package/docs/uk/intlayer_with_vite+solid.md +157 -1
  207. package/docs/uk/intlayer_with_vite+svelte.md +157 -1
  208. package/docs/uk/intlayer_with_vite+vue.md +157 -1
  209. package/docs/vi/compiler.md +85 -50
  210. package/docs/vi/configuration.md +85 -39
  211. package/docs/vi/intlayer_with_nextjs_16.md +174 -1
  212. package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
  213. package/docs/vi/intlayer_with_react_router_v7.md +224 -1
  214. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  215. package/docs/vi/intlayer_with_svelte_kit.md +158 -2
  216. package/docs/vi/intlayer_with_tanstack.md +159 -1
  217. package/docs/vi/intlayer_with_vite+preact.md +157 -1
  218. package/docs/vi/intlayer_with_vite+react.md +157 -1
  219. package/docs/vi/intlayer_with_vite+solid.md +157 -1
  220. package/docs/vi/intlayer_with_vite+svelte.md +157 -1
  221. package/docs/vi/intlayer_with_vite+vue.md +157 -1
  222. package/docs/zh/compiler.md +84 -49
  223. package/docs/zh/configuration.md +80 -37
  224. package/docs/zh/intlayer_with_adonisjs.md +1 -1
  225. package/docs/zh/intlayer_with_express.md +1 -1
  226. package/docs/zh/intlayer_with_fastify.md +1 -1
  227. package/docs/zh/intlayer_with_hono.md +1 -1
  228. package/docs/zh/intlayer_with_nestjs.md +1 -1
  229. package/docs/zh/intlayer_with_nextjs_16.md +174 -1
  230. package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
  231. package/docs/zh/intlayer_with_react_router_v7.md +227 -4
  232. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
  233. package/docs/zh/intlayer_with_svelte_kit.md +158 -2
  234. package/docs/zh/intlayer_with_tanstack.md +159 -1
  235. package/docs/zh/intlayer_with_vite+preact.md +159 -3
  236. package/docs/zh/intlayer_with_vite+react.md +157 -1
  237. package/docs/zh/intlayer_with_vite+solid.md +161 -5
  238. package/docs/zh/intlayer_with_vite+svelte.md +157 -1
  239. package/docs/zh/intlayer_with_vite+vue.md +158 -2
  240. package/package.json +6 -6
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2026-03-10
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: Update compiler options, add FilePathPattern support
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
- // Extract content from components into dictionaries
139
+ // Wyodrębnij zawartość z komponentów do słowników
140
140
  [intlayerExtractBabelPlugin, getExtractPluginOptions()],
141
- // Optimize imports by replacing useIntlayer with direct dictionary imports
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
- ```ts fileName="intlayer.config.ts"
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
- * Pattern to traverse the code to optimize.
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
- transformPattern: [
171
- "**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}",
172
- "!**/node_modules/**",
173
- ],
207
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
174
208
 
175
209
  /**
176
- * Pattern to exclude from the optimization.
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
- output: ({ key }) => `compiler/${key}.content.json`,
213
+ saveComponents: false,
184
214
 
185
215
  /**
186
- * Wstaw tylko zawartość do wygenerowanego pliku, bez klucza.
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: "", // Remove base prefix
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_: `'comp-'`
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_: Jeśli `true`:
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)
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-08-13
3
- updatedAt: 2026-03-11
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
- data: 2026-03-11
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
- ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
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
- * Pattern to traverse the code to optimize.
449
- */
450
- transformPattern: [
451
- "**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}",
452
- "!**/node_modules/**",
453
- ],
454
-
455
- /**
456
- * Pattern to exclude from the optimization.
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
- excludePattern: ["**/node_modules/**"],
502
+ output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
459
503
 
460
504
  /**
461
- * Katalog wyjściowy dla zoptymalizowanych słowników.
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
- output: ({ key }) => `compiler/${key}.content.json`,
508
+ saveComponents: false,
464
509
 
465
510
  /**
466
- * Wstaw tylko zawartość do wygenerowanego pliku, bez klucza.
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: "", // Remove base prefix
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_: `'comp-'`
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_: `({ key }) => 'compiler/${key}.content.json'`
1175
- - _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ę.
1176
- - _Uwaga_: Ścieżki `./**/*` są rozwiązywane względem komponentu. Ścieżki `/**/*` są rozwiązywane względem `baseDir` Intlayer.
1177
- - _Przykład_: `output: ({ locale, key }) => 'compiler/${locale}/${key}.json'`
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_: Jeśli `true`:
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: 2025-12-30
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).