@intlayer/docs 8.3.0 → 8.3.2

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 (360) hide show
  1. package/blog/ar/i18n_using_next-i18next.md +1 -0
  2. package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +0 -29
  3. package/blog/uk/internationalization_and_SEO.md +1 -1
  4. package/docs/ar/compiler.md +84 -49
  5. package/docs/ar/configuration.md +82 -58
  6. package/docs/ar/intlayer_with_analog.md +2 -2
  7. package/docs/ar/intlayer_with_angular.md +2 -2
  8. package/docs/ar/intlayer_with_astro.md +2 -2
  9. package/docs/ar/intlayer_with_lynx+react.md +2 -2
  10. package/docs/ar/intlayer_with_nextjs_16.md +174 -1
  11. package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
  12. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +4 -7
  13. package/docs/ar/intlayer_with_react_native+expo.md +2 -2
  14. package/docs/ar/intlayer_with_react_router_v7.md +224 -1
  15. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
  16. package/docs/ar/intlayer_with_svelte_kit.md +175 -2
  17. package/docs/ar/intlayer_with_tanstack.md +176 -1
  18. package/docs/ar/intlayer_with_vite+preact.md +176 -3
  19. package/docs/ar/intlayer_with_vite+react.md +174 -1
  20. package/docs/ar/intlayer_with_vite+solid.md +176 -3
  21. package/docs/ar/intlayer_with_vite+svelte.md +176 -3
  22. package/docs/ar/intlayer_with_vite+vue.md +178 -5
  23. package/docs/ar/vs_code_extension.md +1 -1
  24. package/docs/de/compiler.md +83 -48
  25. package/docs/de/configuration.md +417 -214
  26. package/docs/de/intlayer_with_analog.md +2 -2
  27. package/docs/de/intlayer_with_angular.md +2 -2
  28. package/docs/de/intlayer_with_astro.md +2 -2
  29. package/docs/de/intlayer_with_lynx+react.md +2 -2
  30. package/docs/de/intlayer_with_nextjs_16.md +176 -1
  31. package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
  32. package/docs/de/intlayer_with_react_native+expo.md +2 -2
  33. package/docs/de/intlayer_with_react_router_v7.md +225 -2
  34. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
  35. package/docs/de/intlayer_with_svelte_kit.md +158 -2
  36. package/docs/de/intlayer_with_tanstack.md +159 -1
  37. package/docs/de/intlayer_with_vite+preact.md +159 -3
  38. package/docs/de/intlayer_with_vite+react.md +157 -1
  39. package/docs/de/intlayer_with_vite+solid.md +161 -5
  40. package/docs/de/intlayer_with_vite+svelte.md +159 -3
  41. package/docs/de/intlayer_with_vite+vue.md +159 -3
  42. package/docs/de/vs_code_extension.md +1 -1
  43. package/docs/en/compiler.md +60 -33
  44. package/docs/en/configuration.md +82 -77
  45. package/docs/en/intlayer_with_analog.md +1 -1
  46. package/docs/en/intlayer_with_angular.md +1 -1
  47. package/docs/en/intlayer_with_astro.md +1 -1
  48. package/docs/en/intlayer_with_lynx+react.md +1 -1
  49. package/docs/en/intlayer_with_nextjs_16.md +176 -0
  50. package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
  51. package/docs/en/intlayer_with_react_native+expo.md +1 -1
  52. package/docs/en/intlayer_with_react_router_v7.md +159 -0
  53. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
  54. package/docs/en/intlayer_with_svelte_kit.md +159 -0
  55. package/docs/en/intlayer_with_tanstack.md +160 -1
  56. package/docs/en/intlayer_with_vite+preact.md +160 -1
  57. package/docs/en/intlayer_with_vite+react.md +159 -0
  58. package/docs/en/intlayer_with_vite+solid.md +149 -28
  59. package/docs/en/intlayer_with_vite+svelte.md +160 -1
  60. package/docs/en/intlayer_with_vite+vue.md +143 -42
  61. package/docs/en/vs_code_extension.md +1 -1
  62. package/docs/en-GB/compiler.md +66 -34
  63. package/docs/en-GB/configuration.md +80 -57
  64. package/docs/en-GB/intlayer_with_analog.md +1 -1
  65. package/docs/en-GB/intlayer_with_angular.md +1 -1
  66. package/docs/en-GB/intlayer_with_astro.md +1 -1
  67. package/docs/en-GB/intlayer_with_lynx+react.md +1 -1
  68. package/docs/en-GB/intlayer_with_react_native+expo.md +1 -1
  69. package/docs/en-GB/intlayer_with_vite+preact.md +1 -1
  70. package/docs/en-GB/intlayer_with_vite+react.md +1 -1
  71. package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
  72. package/docs/en-GB/intlayer_with_vite+svelte.md +1 -1
  73. package/docs/en-GB/intlayer_with_vite+vue.md +2 -2
  74. package/docs/en-GB/vs_code_extension.md +1 -1
  75. package/docs/es/compiler.md +83 -48
  76. package/docs/es/configuration.md +412 -208
  77. package/docs/es/intlayer_with_adonisjs.md +1 -1
  78. package/docs/es/intlayer_with_analog.md +2 -2
  79. package/docs/es/intlayer_with_angular.md +2 -2
  80. package/docs/es/intlayer_with_astro.md +2 -2
  81. package/docs/es/intlayer_with_express.md +1 -1
  82. package/docs/es/intlayer_with_fastify.md +1 -1
  83. package/docs/es/intlayer_with_hono.md +1 -1
  84. package/docs/es/intlayer_with_lynx+react.md +2 -2
  85. package/docs/es/intlayer_with_nestjs.md +1 -1
  86. package/docs/es/intlayer_with_nextjs_16.md +176 -3
  87. package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
  88. package/docs/es/intlayer_with_nuxt.md +1 -1
  89. package/docs/es/intlayer_with_react_native+expo.md +2 -2
  90. package/docs/es/intlayer_with_react_router_v7.md +227 -4
  91. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
  92. package/docs/es/intlayer_with_svelte_kit.md +158 -2
  93. package/docs/es/intlayer_with_tanstack.md +160 -2
  94. package/docs/es/intlayer_with_vite+preact.md +164 -8
  95. package/docs/es/intlayer_with_vite+react.md +160 -4
  96. package/docs/es/intlayer_with_vite+solid.md +165 -9
  97. package/docs/es/intlayer_with_vite+svelte.md +159 -3
  98. package/docs/es/intlayer_with_vite+vue.md +169 -13
  99. package/docs/es/vs_code_extension.md +1 -1
  100. package/docs/fr/compiler.md +81 -46
  101. package/docs/fr/configuration.md +351 -149
  102. package/docs/fr/intlayer_with_adonisjs.md +1 -1
  103. package/docs/fr/intlayer_with_analog.md +2 -2
  104. package/docs/fr/intlayer_with_angular.md +2 -2
  105. package/docs/fr/intlayer_with_astro.md +2 -2
  106. package/docs/fr/intlayer_with_express.md +1 -1
  107. package/docs/fr/intlayer_with_fastify.md +1 -1
  108. package/docs/fr/intlayer_with_hono.md +1 -1
  109. package/docs/fr/intlayer_with_lynx+react.md +2 -2
  110. package/docs/fr/intlayer_with_nestjs.md +1 -1
  111. package/docs/fr/intlayer_with_nextjs_16.md +183 -7
  112. package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
  113. package/docs/fr/intlayer_with_react_native+expo.md +2 -2
  114. package/docs/fr/intlayer_with_react_router_v7.md +229 -3
  115. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
  116. package/docs/fr/intlayer_with_svelte_kit.md +158 -2
  117. package/docs/fr/intlayer_with_tanstack.md +159 -1
  118. package/docs/fr/intlayer_with_vite+preact.md +166 -10
  119. package/docs/fr/intlayer_with_vite+react.md +163 -7
  120. package/docs/fr/intlayer_with_vite+solid.md +165 -9
  121. package/docs/fr/intlayer_with_vite+svelte.md +159 -3
  122. package/docs/fr/intlayer_with_vite+vue.md +168 -12
  123. package/docs/fr/vs_code_extension.md +1 -1
  124. package/docs/hi/compiler.md +81 -46
  125. package/docs/hi/configuration.md +89 -65
  126. package/docs/hi/intlayer_with_analog.md +1 -1
  127. package/docs/hi/intlayer_with_angular.md +2 -2
  128. package/docs/hi/intlayer_with_astro.md +2 -2
  129. package/docs/hi/intlayer_with_lynx+react.md +2 -2
  130. package/docs/hi/intlayer_with_nextjs_16.md +174 -1
  131. package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
  132. package/docs/hi/intlayer_with_react_native+expo.md +2 -2
  133. package/docs/hi/intlayer_with_react_router_v7.md +224 -1
  134. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  135. package/docs/hi/intlayer_with_svelte_kit.md +158 -2
  136. package/docs/hi/intlayer_with_tanstack.md +159 -1
  137. package/docs/hi/intlayer_with_vite+preact.md +159 -3
  138. package/docs/hi/intlayer_with_vite+react.md +157 -1
  139. package/docs/hi/intlayer_with_vite+solid.md +159 -3
  140. package/docs/hi/intlayer_with_vite+svelte.md +159 -3
  141. package/docs/hi/intlayer_with_vite+vue.md +159 -3
  142. package/docs/hi/vs_code_extension.md +1 -1
  143. package/docs/id/compiler.md +84 -51
  144. package/docs/id/configuration.md +85 -65
  145. package/docs/id/intlayer_with_analog.md +2 -2
  146. package/docs/id/intlayer_with_angular.md +2 -2
  147. package/docs/id/intlayer_with_astro.md +2 -2
  148. package/docs/id/intlayer_with_lynx+react.md +2 -2
  149. package/docs/id/intlayer_with_nextjs_16.md +174 -1
  150. package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
  151. package/docs/id/intlayer_with_react_native+expo.md +2 -2
  152. package/docs/id/intlayer_with_react_router_v7.md +224 -1
  153. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
  154. package/docs/id/intlayer_with_svelte_kit.md +158 -2
  155. package/docs/id/intlayer_with_tanstack.md +159 -1
  156. package/docs/id/intlayer_with_vite+preact.md +159 -3
  157. package/docs/id/intlayer_with_vite+react.md +159 -3
  158. package/docs/id/intlayer_with_vite+solid.md +159 -3
  159. package/docs/id/intlayer_with_vite+svelte.md +159 -3
  160. package/docs/id/intlayer_with_vite+vue.md +159 -3
  161. package/docs/id/vs_code_extension.md +1 -1
  162. package/docs/it/compiler.md +81 -46
  163. package/docs/it/configuration.md +410 -208
  164. package/docs/it/intlayer_with_analog.md +2 -2
  165. package/docs/it/intlayer_with_angular.md +2 -2
  166. package/docs/it/intlayer_with_astro.md +2 -2
  167. package/docs/it/intlayer_with_lynx+react.md +2 -2
  168. package/docs/it/intlayer_with_nextjs_16.md +174 -1
  169. package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
  170. package/docs/it/intlayer_with_react_native+expo.md +2 -2
  171. package/docs/it/intlayer_with_react_router_v7.md +225 -2
  172. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
  173. package/docs/it/intlayer_with_svelte_kit.md +158 -2
  174. package/docs/it/intlayer_with_tanstack.md +159 -1
  175. package/docs/it/intlayer_with_vite+preact.md +159 -3
  176. package/docs/it/intlayer_with_vite+react.md +159 -3
  177. package/docs/it/intlayer_with_vite+solid.md +161 -5
  178. package/docs/it/intlayer_with_vite+svelte.md +159 -3
  179. package/docs/it/intlayer_with_vite+vue.md +161 -5
  180. package/docs/it/vs_code_extension.md +1 -1
  181. package/docs/ja/compiler.md +94 -58
  182. package/docs/ja/configuration.md +90 -66
  183. package/docs/ja/intlayer_with_analog.md +2 -2
  184. package/docs/ja/intlayer_with_angular.md +2 -2
  185. package/docs/ja/intlayer_with_astro.md +2 -2
  186. package/docs/ja/intlayer_with_lynx+react.md +2 -2
  187. package/docs/ja/intlayer_with_nextjs_16.md +174 -1
  188. package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
  189. package/docs/ja/intlayer_with_react_native+expo.md +2 -2
  190. package/docs/ja/intlayer_with_react_router_v7.md +184 -394
  191. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
  192. package/docs/ja/intlayer_with_svelte_kit.md +119 -595
  193. package/docs/ja/intlayer_with_tanstack.md +131 -642
  194. package/docs/ja/intlayer_with_vite+preact.md +111 -1231
  195. package/docs/ja/intlayer_with_vite+react.md +129 -1304
  196. package/docs/ja/intlayer_with_vite+solid.md +161 -5
  197. package/docs/ja/intlayer_with_vite+svelte.md +159 -3
  198. package/docs/ja/intlayer_with_vite+vue.md +159 -3
  199. package/docs/ja/vs_code_extension.md +1 -1
  200. package/docs/ko/compiler.md +88 -52
  201. package/docs/ko/configuration.md +89 -65
  202. package/docs/ko/intlayer_with_analog.md +2 -2
  203. package/docs/ko/intlayer_with_angular.md +2 -2
  204. package/docs/ko/intlayer_with_astro.md +2 -2
  205. package/docs/ko/intlayer_with_lynx+react.md +2 -2
  206. package/docs/ko/intlayer_with_nextjs_16.md +174 -1
  207. package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
  208. package/docs/ko/intlayer_with_react_native+expo.md +2 -2
  209. package/docs/ko/intlayer_with_react_router_v7.md +225 -2
  210. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
  211. package/docs/ko/intlayer_with_svelte_kit.md +158 -2
  212. package/docs/ko/intlayer_with_tanstack.md +159 -1
  213. package/docs/ko/intlayer_with_vite+preact.md +159 -3
  214. package/docs/ko/intlayer_with_vite+react.md +157 -1
  215. package/docs/ko/intlayer_with_vite+solid.md +161 -5
  216. package/docs/ko/intlayer_with_vite+svelte.md +159 -3
  217. package/docs/ko/intlayer_with_vite+vue.md +159 -3
  218. package/docs/ko/vs_code_extension.md +1 -1
  219. package/docs/pl/compiler.md +84 -51
  220. package/docs/pl/configuration.md +85 -57
  221. package/docs/pl/intlayer_with_analog.md +2 -2
  222. package/docs/pl/intlayer_with_angular.md +2 -2
  223. package/docs/pl/intlayer_with_astro.md +2 -2
  224. package/docs/pl/intlayer_with_lynx+react.md +2 -2
  225. package/docs/pl/intlayer_with_nextjs_16.md +174 -1
  226. package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
  227. package/docs/pl/intlayer_with_react_native+expo.md +2 -2
  228. package/docs/pl/intlayer_with_react_router_v7.md +224 -1
  229. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
  230. package/docs/pl/intlayer_with_svelte_kit.md +158 -2
  231. package/docs/pl/intlayer_with_tanstack.md +159 -1
  232. package/docs/pl/intlayer_with_vite+preact.md +158 -2
  233. package/docs/pl/intlayer_with_vite+react.md +159 -3
  234. package/docs/pl/intlayer_with_vite+solid.md +159 -3
  235. package/docs/pl/intlayer_with_vite+svelte.md +159 -3
  236. package/docs/pl/intlayer_with_vite+vue.md +161 -5
  237. package/docs/pl/vs_code_extension.md +1 -1
  238. package/docs/pt/compiler.md +81 -46
  239. package/docs/pt/configuration.md +399 -199
  240. package/docs/pt/intlayer_with_analog.md +2 -2
  241. package/docs/pt/intlayer_with_angular.md +2 -2
  242. package/docs/pt/intlayer_with_astro.md +2 -2
  243. package/docs/pt/intlayer_with_lynx+react.md +2 -2
  244. package/docs/pt/intlayer_with_nextjs_16.md +174 -1
  245. package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
  246. package/docs/pt/intlayer_with_react_native+expo.md +2 -2
  247. package/docs/pt/intlayer_with_react_router_v7.md +224 -1
  248. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
  249. package/docs/pt/intlayer_with_svelte_kit.md +158 -2
  250. package/docs/pt/intlayer_with_tanstack.md +159 -1
  251. package/docs/pt/intlayer_with_vite+preact.md +158 -2
  252. package/docs/pt/intlayer_with_vite+react.md +157 -1
  253. package/docs/pt/intlayer_with_vite+solid.md +159 -3
  254. package/docs/pt/intlayer_with_vite+svelte.md +159 -3
  255. package/docs/pt/intlayer_with_vite+vue.md +159 -3
  256. package/docs/pt/vs_code_extension.md +1 -1
  257. package/docs/ru/compiler.md +90 -57
  258. package/docs/ru/configuration.md +78 -67
  259. package/docs/ru/intlayer_with_analog.md +2 -2
  260. package/docs/ru/intlayer_with_angular.md +2 -2
  261. package/docs/ru/intlayer_with_astro.md +2 -2
  262. package/docs/ru/intlayer_with_lynx+react.md +2 -2
  263. package/docs/ru/intlayer_with_nextjs_16.md +174 -1
  264. package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
  265. package/docs/ru/intlayer_with_react_native+expo.md +2 -2
  266. package/docs/ru/intlayer_with_react_router_v7.md +224 -1
  267. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
  268. package/docs/ru/intlayer_with_svelte_kit.md +158 -2
  269. package/docs/ru/intlayer_with_tanstack.md +159 -1
  270. package/docs/ru/intlayer_with_vite+preact.md +159 -3
  271. package/docs/ru/intlayer_with_vite+react.md +157 -1
  272. package/docs/ru/intlayer_with_vite+solid.md +159 -3
  273. package/docs/ru/intlayer_with_vite+svelte.md +159 -3
  274. package/docs/ru/intlayer_with_vite+vue.md +159 -3
  275. package/docs/ru/vs_code_extension.md +1 -1
  276. package/docs/tr/compiler.md +85 -52
  277. package/docs/tr/configuration.md +85 -61
  278. package/docs/tr/intlayer_with_analog.md +2 -2
  279. package/docs/tr/intlayer_with_angular.md +2 -2
  280. package/docs/tr/intlayer_with_astro.md +2 -2
  281. package/docs/tr/intlayer_with_lynx+react.md +2 -2
  282. package/docs/tr/intlayer_with_nextjs_16.md +174 -1
  283. package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
  284. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +6 -14
  285. package/docs/tr/intlayer_with_react_native+expo.md +2 -2
  286. package/docs/tr/intlayer_with_react_router_v7.md +224 -1
  287. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
  288. package/docs/tr/intlayer_with_svelte_kit.md +158 -2
  289. package/docs/tr/intlayer_with_tanstack.md +159 -1
  290. package/docs/tr/intlayer_with_vite+preact.md +159 -3
  291. package/docs/tr/intlayer_with_vite+react.md +159 -3
  292. package/docs/tr/intlayer_with_vite+solid.md +159 -3
  293. package/docs/tr/intlayer_with_vite+svelte.md +159 -3
  294. package/docs/tr/intlayer_with_vite+vue.md +159 -3
  295. package/docs/tr/vs_code_extension.md +1 -1
  296. package/docs/uk/compiler.md +96 -61
  297. package/docs/uk/configuration.md +85 -57
  298. package/docs/uk/intlayer_with_analog.md +2 -2
  299. package/docs/uk/intlayer_with_angular.md +2 -2
  300. package/docs/uk/intlayer_with_astro.md +2 -2
  301. package/docs/uk/intlayer_with_lynx+react.md +2 -2
  302. package/docs/uk/intlayer_with_nextjs_16.md +174 -1
  303. package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
  304. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +4 -22
  305. package/docs/uk/intlayer_with_react_native+expo.md +2 -2
  306. package/docs/uk/intlayer_with_react_router_v7.md +224 -1
  307. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
  308. package/docs/uk/intlayer_with_svelte_kit.md +157 -1
  309. package/docs/uk/intlayer_with_tanstack.md +159 -1
  310. package/docs/uk/intlayer_with_vite+preact.md +159 -3
  311. package/docs/uk/intlayer_with_vite+react.md +157 -1
  312. package/docs/uk/intlayer_with_vite+solid.md +159 -3
  313. package/docs/uk/intlayer_with_vite+svelte.md +159 -3
  314. package/docs/uk/intlayer_with_vite+vue.md +159 -3
  315. package/docs/uk/vs_code_extension.md +1 -1
  316. package/docs/vi/compiler.md +85 -50
  317. package/docs/vi/configuration.md +87 -59
  318. package/docs/vi/intlayer_with_analog.md +2 -2
  319. package/docs/vi/intlayer_with_angular.md +2 -2
  320. package/docs/vi/intlayer_with_astro.md +2 -2
  321. package/docs/vi/intlayer_with_lynx+react.md +2 -2
  322. package/docs/vi/intlayer_with_nextjs_16.md +174 -1
  323. package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
  324. package/docs/vi/intlayer_with_react_native+expo.md +2 -2
  325. package/docs/vi/intlayer_with_react_router_v7.md +224 -1
  326. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  327. package/docs/vi/intlayer_with_svelte_kit.md +158 -2
  328. package/docs/vi/intlayer_with_tanstack.md +159 -1
  329. package/docs/vi/intlayer_with_vite+preact.md +159 -3
  330. package/docs/vi/intlayer_with_vite+react.md +159 -3
  331. package/docs/vi/intlayer_with_vite+solid.md +159 -3
  332. package/docs/vi/intlayer_with_vite+svelte.md +159 -3
  333. package/docs/vi/intlayer_with_vite+vue.md +159 -3
  334. package/docs/vi/vs_code_extension.md +1 -1
  335. package/docs/zh/compiler.md +84 -49
  336. package/docs/zh/configuration.md +82 -58
  337. package/docs/zh/intlayer_with_adonisjs.md +1 -1
  338. package/docs/zh/intlayer_with_analog.md +2 -2
  339. package/docs/zh/intlayer_with_angular.md +2 -2
  340. package/docs/zh/intlayer_with_astro.md +2 -2
  341. package/docs/zh/intlayer_with_express.md +1 -1
  342. package/docs/zh/intlayer_with_fastify.md +1 -1
  343. package/docs/zh/intlayer_with_hono.md +1 -1
  344. package/docs/zh/intlayer_with_lynx+react.md +2 -2
  345. package/docs/zh/intlayer_with_nestjs.md +1 -1
  346. package/docs/zh/intlayer_with_nextjs_16.md +174 -1
  347. package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
  348. package/docs/zh/intlayer_with_react_native+expo.md +2 -2
  349. package/docs/zh/intlayer_with_react_router_v7.md +227 -4
  350. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
  351. package/docs/zh/intlayer_with_svelte_kit.md +158 -2
  352. package/docs/zh/intlayer_with_tanstack.md +159 -1
  353. package/docs/zh/intlayer_with_vite+preact.md +161 -5
  354. package/docs/zh/intlayer_with_vite+react.md +157 -1
  355. package/docs/zh/intlayer_with_vite+solid.md +163 -7
  356. package/docs/zh/intlayer_with_vite+svelte.md +159 -3
  357. package/docs/zh/intlayer_with_vite+vue.md +162 -6
  358. package/docs/zh/vs_code_extension.md +2 -2
  359. package/package.json +8 -8
  360. package/docs/update_docs.py +0 -65
@@ -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: Конфігурація
5
5
  description: Дізнайтеся, як налаштувати Intlayer для вашого застосунку. Зрозумійте різні параметри та опції, доступні для налаштування Intlayer відповідно до ваших потреб.
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: Перемістити 'baseDir' з конфігурації 'content' до конфігурації 'system'
20
20
  - version: 8.2.0
21
21
  date: 2026-03-09
@@ -110,7 +110,7 @@ Intlayer підтримує формати файлів конфігурації
110
110
 
111
111
  ## Приклад файлу конфігурації
112
112
 
113
- ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
113
+ ````typescript fileName="intlayer.config.ts" codeFormat="typescript"
114
114
  import { Locales, type IntlayerConfig } from "intlayer";
115
115
  import { nextjsRewrite } from "intlayer/routing";
116
116
  import { z } from "zod";
@@ -208,7 +208,7 @@ const config: IntlayerConfig = {
208
208
  * Options: 'cookie', 'localStorage', 'sessionStorage', 'header', or an array of these.
209
209
  * Default: ['cookie', 'header']
210
210
  */
211
- storage: "cookie",
211
+ storage: ["cookie", "header"],
212
212
 
213
213
  /**
214
214
  * Base path for the application URLs.
@@ -274,13 +274,13 @@ const config: IntlayerConfig = {
274
274
  editor: {
275
275
  /**
276
276
  * Whether the visual editor is enabled.
277
- * Default: true
277
+ * Default: false
278
278
  */
279
279
  enabled: true,
280
280
 
281
281
  /**
282
282
  * URL of your application for origin validation.
283
- * Default: "*"
283
+ * Default: ""
284
284
  */
285
285
  applicationURL: "http://localhost:3000",
286
286
 
@@ -345,6 +345,17 @@ const config: IntlayerConfig = {
345
345
  * Base URL for the AI API.
346
346
  */
347
347
  baseURL: "http://localhost:3000",
348
+
349
+ /**
350
+ * Серіалізація даних
351
+ *
352
+ * Опції:
353
+ * - "json": Стандартний, надійний; використовує більше токенів.
354
+ * - "toon": Менше токенів, менш послідовний, ніж JSON.
355
+ *
356
+ * За замовчуванням: "json"
357
+ */
358
+ dataSerialization: "json",
348
359
  },
349
360
 
350
361
  /**
@@ -444,42 +455,70 @@ const config: IntlayerConfig = {
444
455
  compiler: {
445
456
  /**
446
457
  * Вказує, чи має бути увімкнено компілятор.
458
+ *
459
+ * - false : Вимкнути компілятор.
460
+ * - true : Увімкнути компілятор.
461
+ * - "build-only" : Пропустити компілятор під час розробки для прискорення запуску.
462
+ *
463
+ * Значення за замовчуванням : false
447
464
  */
448
465
  enabled: true,
449
466
 
450
467
  /**
451
- * Pattern to traverse the code to optimize.
452
- */
453
- transformPattern: [
454
- "**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}",
455
- "!**/node_modules/**",
456
- ],
457
-
458
- /**
459
- * Pattern to exclude from the optimization.
468
+ * Визначає шлях до вихідних файлів. Замінює `outputDir`.
469
+ *
470
+ * - Шляхи, що починаються з `./`, розв'язуються відносно каталогу компонента.
471
+ * - Шляхи, що починаються з `/`, розв'язуються відносно кореня проєкту (`baseDir`).
472
+ *
473
+ * - Включення змінної `{{locale}}` у шлях дозволить генерувати словники, розділені за локалями.
474
+ *
475
+ * Приклади:
476
+ * ```ts
477
+ * {
478
+ * // Створює багатомовні файли .content.ts поруч із компонентом
479
+ * output: ({ fileName, extension }) => `./${fileName}${extension}`,
480
+ *
481
+ * // output: './{{fileName}}{{extension}}', // Еквівалент з використанням рядкового шаблону
482
+ * }
483
+ * ```
484
+ *
485
+ * ```ts
486
+ * {
487
+ * // Створює централізовані JSON-файли за локалями в корені проєкту
488
+ * output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
489
+ *
490
+ * // output: '/locales/{{locale}}/{{key}}.content.json', // Еквівалент з використанням рядкового шаблону
491
+ * }
492
+ * ```
493
+ *
494
+ * Список змінних:
495
+ * - `fileName`: Назва файлу.
496
+ * - `key`: Ключ контенту.
497
+ * - `locale`: Локаль контенту.
498
+ * - `extension`: Розширення файлу.
499
+ * - `componentFileName`: Назва файлу компонента.
500
+ * - `componentExtension`: Розширення файлу компонента.
501
+ * - `format`: Формат словника.
502
+ * - `componentFormat`: Формат словника компонента.
503
+ * - `componentDirPath`: Шлях до каталогу компонента.
460
504
  */
461
- excludePattern: ["**/node_modules/**"],
505
+ output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
462
506
 
463
507
  /**
464
- * Вихідний каталог для оптимізованих словників.
508
+ * Вказує, чи мають компоненти зберігатися після трансформації.
509
+ * Таким чином компілятор можна запустити лише один раз для трансформації додатка, а потім видалити.
465
510
  */
466
- output: ({ key }) => `compiler/${key}.content.json`,
511
+ saveComponents: false,
467
512
 
468
513
  /**
469
- * Вставте лише вміст у згенерований файл, без ключа.
514
+ * Вставляти лише вміст у згенерований файл. Корисно для JSON-виводів i18next або ICU MessageFormat для кожної локалі.
470
515
  */
471
516
  noMetadata: false,
472
517
 
473
518
  /**
474
519
  * Префікс ключа словника
475
520
  */
476
- dictionaryKeyPrefix: "", // Remove base prefix
477
-
478
- /**
479
- * Вказує, чи мають компоненти зберігатися після трансформації.
480
- * Таким чином компілятор можна запустити лише один раз для трансформації додатка, а потім видалити.
481
- */
482
- saveComponents: false,
521
+ dictionaryKeyPrefix: "", // Додайте необов'язковий префікс для витягнутих ключів словника
483
522
  },
484
523
 
485
524
  /**
@@ -498,7 +537,7 @@ const config: IntlayerConfig = {
498
537
  };
499
538
 
500
539
  export default config;
501
- ```
540
+ ````
502
541
 
503
542
  ## Довідник конфігурації
504
543
 
@@ -1098,24 +1137,6 @@ Intlayer підтримує кількох постачальників ШІ д
1098
1137
  - _Примітка_: Ця опція покладається на плагіни `@intlayer/babel` та `@intlayer/swc`.
1099
1138
  - _Примітка_: Переконайтесь, що всі ключі оголошені статично у викликах `useIntlayer`. Наприклад `useIntlayer('navbar')`.
1100
1139
 
1101
- - **importMode**:
1102
- - _Примітка_: **Deprecated**: Use `dictionary.importMode` instead.
1103
- - _Тип_: `'static' | 'dynamic' | 'fetch'`
1104
- - _За замовчуванням_: `'static'`
1105
- - _Опис_: Керує тим, як імпортуються словники.
1106
- - _Приклад_: `'dynamic'`
1107
- - _Примітка_: Доступні режими:
1108
- - "static": Словники імпортуються статично. Замінює `useIntlayer` на `useDictionary`.
1109
- - "dynamic": Словники імпортуються динамічно з використанням Suspense. Замінює `useIntlayer` на `useDictionaryDynamic`.
1110
- - "fetch": Словники отримуються динамічно з використанням live sync API. Замінює `useIntlayer` на `useDictionaryDynamic`.
1111
- - _Примітка_: Динамічні імпорти залежать від Suspense і можуть дещо вплинути на продуктивність рендерингу.
1112
- - _Примітка_: Якщо вимкнено, усі локалі будуть завантажені одночасно, навіть якщо вони не використовуються.
1113
- - _Примітка_: Ця опція покладається на плагіни `@intlayer/babel` та `@intlayer/swc`.
1114
- - _Примітка_: Переконайтеся, що всі ключі оголошені статично у викликах `useIntlayer`. Наприклад `useIntlayer('navbar')`.
1115
- - _Примітка_: Ця опція буде ігноруватися, якщо `optimize` вимкнено.
1116
- - _Примітка_: Якщо встановлено в "live", лише ті словники, які містять віддалений контент і позначені прапорцем "live", будуть перетворені у live-режим. Інші будуть імпортовані динамічно як режим "dynamic" для оптимізації кількості запитів і швидкості завантаження.
1117
- - _Примітка_: У режимі live буде використовуватися Live Sync API для отримання словників. Якщо виклик API завершиться невдачею, словники будуть імпортовані динамічно в режимі "dynamic".
1118
- - _Примітка_: Ця опція не вплине на функції `getIntlayer`, `getDictionary`, `useDictionary`, `useDictionaryAsync` та `useDictionaryDynamic`.
1119
1140
  - **checkTypes**:
1120
1141
  - _Тип_: `boolean`
1121
1142
  - _Типово_: `false`
@@ -1155,7 +1176,7 @@ Intlayer підтримує кількох постачальників ШІ д
1155
1176
 
1156
1177
  - **dictionaryKeyPrefix**:
1157
1178
  - _Тип_: `string`
1158
- - _За замовчуванням_: `'comp-'`
1179
+ - _За замовчуванням_: `''`
1159
1180
  - _Опис_: Префікс для витягнутих ключів словника.
1160
1181
  - _Приклад_: `'my-key-'`
1161
1182
  - _Примітка_: Під час витягування словників ключ генерується на основі назви файлу. Цей префікс додається до згенерованого ключа, щоб запобігти конфліктам.
@@ -1179,30 +1200,37 @@ Intlayer підтримує кількох постачальників ШІ д
1179
1200
  - _Опис_: Шаблони, що визначають, які файли слід виключити під час оптимізації.
1180
1201
  - _Приклад_: `['**/node_modules/**', '!**/node_modules/react/**']`
1181
1202
 
1182
- - **outputDir**:
1183
- - _Тип_: `string`
1184
- - _За замовчуванням_: `'compiler'`
1185
- - _Опис_: Каталог, у якому будуть зберігатися витягнуті словники, відносно базового шляху вашого проекту.
1186
-
1187
1203
  - **output**:
1188
1204
  - _Тип_: `FilePathPattern`
1189
- - _Типово_: `({ key }) => 'compiler/${key}.content.json'`
1190
- - _Опис_: Визначає шлях до вихідних файлів. Замінює `outputDir`. Обробляє динамічні змінні, такі як `{{locale}}`, `{{key}}`, `{{fileName}}`, `{{extension}}`, `{{format}}`, `{{dirPath}}`, `{{componentFileName}}`, `{{componentExtension}}` та `{{componentFormat}}`. Можна встановити як рядок у форматі `'my/{{var}}/path'` або як функцію.
1191
- - _Примітка_: Шляхи `./**/*` розв'язуються відносно компонента. Шляхи `/**/*` розв'язуються відносно `baseDir` Intlayer.
1192
- - _Приклад_: `output: ({ locale, key }) => 'compiler/${locale}/${key}.json'`
1205
+ - _Типово_: `undefined`
1206
+ - _Опис_: Визначає шлях до вихідних файлів. Замінює `outputDir`. Підтримує динамічні змінні через рядкові шаблони або функцію. Підтримувані змінні: `{{fileName}}`, `{{key}}`, `{{locale}}`, `{{extension}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{format}}`, `{{componentFormat}}`, та `{{componentDirPath}}`.
1207
+ - _Примітка_: Шляхи, що починаються з `./`, розв'язуються відносно каталогу компонента. Шляхи, що починаються з `/`, розв'язуються відносно кореня проєкту (`baseDir`).
1208
+ - _Примітка_: Включення змінної `{{locale}}` у шлях дозволить генерувати словники, розділені за локалями.
1209
+ - _Приклад_:
1210
+ - **Багатомовний файл поруч із компонентом**:
1211
+ - Рядок: `'./{{fileName}}{{extension}}'`
1212
+ - Функція: `({ fileName, extension }) => \`./${fileName}${extension}\``
1213
+
1214
+ - **Централізовані JSON-файли для кожної локалі**:
1215
+ - Рядок: `'/locales/{{locale}}/{{key}}.content.json'`
1216
+ - Функція: `({ key, locale }) => \`/locales/${locale}/${key}.content.json\``
1193
1217
 
1194
1218
  - **noMetadata**:
1195
1219
  - _Тип_: `boolean`
1196
1220
  - _Типово_: `false`
1197
- - _Опис_: Вказує, чи мають метадані зберігатися у файлі. Якщо true, компілятор не зберігатиме метадані словників (ключ, оболонка вмісту).
1221
+ - _Опис_: Вказує, чи мають метадані зберігатися у файлі. Якщо true, компілятор не зберігатиме метадані словників (ключ, оболонка вмісту). Корисно для виводу JSON для i18next або ICU MessageFormat для кожної локалі.
1198
1222
  - _Примітка_: Корисно при використанні з плагіном `loadJSON`.
1199
- - _Приклад_: Якщо `true`:
1223
+ - _Приклад_:
1224
+ Якщо `true` :
1225
+
1200
1226
  ```json
1201
1227
  {
1202
1228
  "key": "value"
1203
1229
  }
1204
1230
  ```
1231
+
1205
1232
  Якщо `false`:
1233
+
1206
1234
  ```json
1207
1235
  {
1208
1236
  "key": "value",
@@ -344,8 +344,8 @@ Intlayer використовує розширення модулів (module au
344
344
 
345
345
  Для цього ви можете додати наступні інструкції до вашого файлу `.gitignore`:
346
346
 
347
- ```plaintext
348
- # Ігнорувати файли, створені Intlayer
347
+ ```bash
348
+ # Ігнорувати файли, створені Intlayer
349
349
  .intlayer
350
350
  ```
351
351
 
@@ -400,8 +400,8 @@ Intlayer використовує розширення модулів (module au
400
400
 
401
401
  Для цього ви можете додати наступні інструкції до вашого файлу `.gitignore`:
402
402
 
403
- ```plaintext
404
- # Ігнорувати файли, створені Intlayer
403
+ ```bash
404
+ # Ігнорувати файли, створені Intlayer
405
405
  .intlayer
406
406
  ```
407
407
 
@@ -227,8 +227,8 @@ Intlayer використовує module augmentation, щоб отримати
227
227
 
228
228
  Для цього можете додати такі інструкції у файл `.gitignore`:
229
229
 
230
- ```plaintext
231
- # Ігнорувати файли, згенеровані Intlayer
230
+ ```bash
231
+ # Ігнорувати файли, згенеровані Intlayer
232
232
  .intlayer
233
233
  ```
234
234
 
@@ -515,8 +515,8 @@ Intlayer генерує визначення типів у прихованій
515
515
 
516
516
  Щоб уникнути коміту автоматично згенерованих файлів Intlayer, додайте наступне до вашого `.gitignore`:
517
517
 
518
- ```plaintext
519
- # Ігнорувати файли, згенеровані Intlayer
518
+ ```bash
519
+ # Ігнорувати файли, згенеровані Intlayer
520
520
  .intlayer
521
521
  ```
522
522
 
@@ -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 - Як перекласти додаток Next.js 16 у 2026
5
5
  description: Дізнайтеся, як зробити ваш вебсайт на Next.js 16 багатомовним. Дотримуйтесь документації, щоб інтернаціоналізувати (i18n) та перекласти його.
6
6
  keywords:
@@ -1695,6 +1695,179 @@ Intlayer використовує розширення модулів (module au
1695
1695
 
1696
1696
  Більш детальну інформацію про те, як користуватися розширенням, можна знайти в [документації розширення Intlayer для VS Code](https://intlayer.org/doc/vs-code-extension).
1697
1697
 
1698
+ ### (Необов'язково) Крок 1 : Витягніть вміст ваших компонентів
1699
+
1700
+ Якщо у вас є існуюча кодова база, перетворення тисяч файлів може зайняти багато часу.
1701
+
1702
+ Щоб спростити цей процес, Intlayer пропонує [компілятор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/compiler.md) / [екстрактор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/extract.md) для перетворення ваших компонентів і витягування вмісту.
1703
+
1704
+ Щоб налаштувати його, ви можете додати розділ `compiler` у свій файл `intlayer.config.ts`:
1705
+
1706
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
1707
+ import { type IntlayerConfig } from "intlayer";
1708
+
1709
+ const config: IntlayerConfig = {
1710
+ // ... Інша частина вашої конфігурації
1711
+ compiler: {
1712
+ /**
1713
+ * Вказує, чи повинен бути включений компілятор.
1714
+ */
1715
+ enabled: true,
1716
+
1717
+ /**
1718
+ * Визначає шлях до вихідних файлів
1719
+ */
1720
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1721
+
1722
+ /**
1723
+ * Вказує, чи повинні компоненти зберігатися після перетворення. Таким чином, компілятор можна запустити лише один раз для перетворення програми, а потім видалити.
1724
+ */
1725
+ saveComponents: false,
1726
+
1727
+ /**
1728
+ * Префікс ключа словника
1729
+ */
1730
+ dictionaryKeyPrefix: "",
1731
+ },
1732
+ };
1733
+
1734
+ export default config;
1735
+ ```
1736
+
1737
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
1738
+ /** @type {import('intlayer').IntlayerConfig} */
1739
+ const config = {
1740
+ // ... Інша частина вашої конфігурації
1741
+ compiler: {
1742
+ /**
1743
+ * Вказує, чи повинен бути включений компілятор.
1744
+ */
1745
+ enabled: true,
1746
+
1747
+ /**
1748
+ * Визначає шлях до вихідних файлів
1749
+ */
1750
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1751
+
1752
+ /**
1753
+ * Вказує, чи повинні компоненти зберігатися після перетворення. Таким чином, компілятор можна запустити лише один раз для перетворення програми, а потім видалити.
1754
+ */
1755
+ saveComponents: false,
1756
+
1757
+ /**
1758
+ * Префікс ключа словника
1759
+ */
1760
+ dictionaryKeyPrefix: "",
1761
+ },
1762
+ };
1763
+
1764
+ export default config;
1765
+ ```
1766
+
1767
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
1768
+ /** @type {import('intlayer').IntlayerConfig} */
1769
+ const config = {
1770
+ // ... Інша частина вашої конфігурації
1771
+ compiler: {
1772
+ /**
1773
+ * Вказує, чи повинен бути включений компілятор.
1774
+ */
1775
+ enabled: true,
1776
+
1777
+ /**
1778
+ * Визначає шлях до вихідних файлів
1779
+ */
1780
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1781
+
1782
+ /**
1783
+ * Вказує, чи повинні компоненти зберігатися після перетворення. Таким чином, компілятор можна запустити лише один раз для перетворення програми, а потім видалити.
1784
+ */
1785
+ saveComponents: false,
1786
+
1787
+ /**
1788
+ * Префікс ключа словника
1789
+ */
1790
+ dictionaryKeyPrefix: "",
1791
+ },
1792
+ };
1793
+
1794
+ module.exports = config;
1795
+ ```
1796
+
1797
+ <Tabs>
1798
+ <Tab value='Команда витягування'>
1799
+
1800
+ Запустіть екстрактор для перетворення компонентів і витягування вмісту
1801
+
1802
+ ```bash packageManager="npm"
1803
+ npx intlayer extract
1804
+ ```
1805
+
1806
+ ```bash packageManager="pnpm"
1807
+ pnpm intlayer extract
1808
+ ```
1809
+
1810
+ ```bash packageManager="yarn"
1811
+ yarn intlayer extract
1812
+ ```
1813
+
1814
+ ```bash packageManager="bun"
1815
+ bunx intlayer extract
1816
+ ```
1817
+
1818
+ </Tab>
1819
+ <Tab value='Компілятор Babel'>
1820
+
1821
+ ```bash packageManager="npm"
1822
+ npm install @intlayer/babel --save-dev
1823
+ ```
1824
+
1825
+ ```bash packageManager="pnpm"
1826
+ pnpm add @intlayer/babel --save-dev
1827
+ ```
1828
+
1829
+ ```bash packageManager="yarn"
1830
+ yarn add @intlayer/babel --save-dev
1831
+ ```
1832
+
1833
+ ```bash packageManager="bun"
1834
+ bun add @intlayer/babel --dev
1835
+ ```
1836
+
1837
+ ```js fileName="babel.config.js"
1838
+ const {
1839
+ intlayerExtractBabelPlugin,
1840
+ getExtractPluginOptions,
1841
+ } = require("@intlayer/babel");
1842
+
1843
+ module.exports = {
1844
+ presets: ["next/babel"],
1845
+ plugins: [
1846
+ // Витягування вмісту з компонентів у словники
1847
+ [intlayerExtractBabelPlugin, getExtractPluginOptions()],
1848
+ ],
1849
+ };
1850
+ ```
1851
+
1852
+ ```bash packageManager="npm"
1853
+ npm run build # Або npm run dev
1854
+ ```
1855
+
1856
+ ```bash packageManager="pnpm"
1857
+ pnpm run build # Or pnpm run dev
1858
+ ```
1859
+
1860
+ ```bash packageManager="yarn"
1861
+ yarn build # Or yarn dev
1862
+ ```
1863
+
1864
+ ```bash packageManager="bun"
1865
+ bun run build # Or bun run dev
1866
+ ```
1867
+
1868
+ </Tab>
1869
+ </Tabs>
1870
+
1698
1871
  ### Йдіть далі
1699
1872
 
1700
1873
  Щоб піти далі, ви можете впровадити [візуальний редактор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_visual_editor.md) або екстерналізувати ваш контент за допомогою [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_CMS.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2026-01-10
3
- updatedAt: 2026-01-10
3
+ updatedAt: 2026-03-12
4
4
  title: Next.js i18n - Перетворення існуючого додатка Next.js на багатомовний додаток у 2026
5
5
  description: Дізнайтеся, як зробити ваш існуючий додаток Next.js багатомовним за допомогою Intlayer Compiler. Дотримуйтесь документації, щоб інтернаціоналізувати (i18n) та перекласти ваш додаток за допомогою ШІ.
6
6
  keywords:
@@ -501,6 +501,179 @@ Intlayer використовує розширення модулів (module au
501
501
 
502
502
  Прочитайте [документацію до розширення VS Code Intlayer](https://intlayer.org/doc/vs-code-extension) для отримання детальних інструкцій щодо використання розширення.
503
503
 
504
+ ### (Необов'язково) Крок 1 : Витягніть вміст ваших компонентів
505
+
506
+ Якщо у вас є існуюча кодова база, перетворення тисяч файлів може зайняти багато часу.
507
+
508
+ Щоб спростити цей процес, Intlayer пропонує [компілятор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/compiler.md) / [екстрактор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/cli/extract.md) для перетворення ваших компонентів і витягування вмісту.
509
+
510
+ Щоб налаштувати його, ви можете додати розділ `compiler` у свій файл `intlayer.config.ts`:
511
+
512
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
513
+ import { type IntlayerConfig } from "intlayer";
514
+
515
+ const config: IntlayerConfig = {
516
+ // ... Інша частина вашої конфігурації
517
+ compiler: {
518
+ /**
519
+ * Вказує, чи повинен бути включений компілятор.
520
+ */
521
+ enabled: true,
522
+
523
+ /**
524
+ * Визначає шлях до вихідних файлів
525
+ */
526
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
527
+
528
+ /**
529
+ * Вказує, чи повинні компоненти зберігатися після перетворення. Таким чином, компілятор можна запустити лише один раз для перетворення програми, а потім видалити.
530
+ */
531
+ saveComponents: false,
532
+
533
+ /**
534
+ * Префікс ключа словника
535
+ */
536
+ dictionaryKeyPrefix: "",
537
+ },
538
+ };
539
+
540
+ export default config;
541
+ ```
542
+
543
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
544
+ /** @type {import('intlayer').IntlayerConfig} */
545
+ const config = {
546
+ // ... Інша частина вашої конфігурації
547
+ compiler: {
548
+ /**
549
+ * Вказує, чи повинен бути включений компілятор.
550
+ */
551
+ enabled: true,
552
+
553
+ /**
554
+ * Визначає шлях до вихідних файлів
555
+ */
556
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
557
+
558
+ /**
559
+ * Вказує, чи повинні компоненти зберігатися після перетворення. Таким чином, компілятор можна запустити лише один раз для перетворення програми, а потім видалити.
560
+ */
561
+ saveComponents: false,
562
+
563
+ /**
564
+ * Префікс ключа словника
565
+ */
566
+ dictionaryKeyPrefix: "",
567
+ },
568
+ };
569
+
570
+ export default config;
571
+ ```
572
+
573
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
574
+ /** @type {import('intlayer').IntlayerConfig} */
575
+ const config = {
576
+ // ... Інша частина вашої конфігурації
577
+ compiler: {
578
+ /**
579
+ * Вказує, чи повинен бути включений компілятор.
580
+ */
581
+ enabled: true,
582
+
583
+ /**
584
+ * Визначає шлях до вихідних файлів
585
+ */
586
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
587
+
588
+ /**
589
+ * Вказує, чи повинні компоненти зберігатися після перетворення. Таким чином, компілятор можна запустити лише один раз для перетворення програми, а потім видалити.
590
+ */
591
+ saveComponents: false,
592
+
593
+ /**
594
+ * Префікс ключа словника
595
+ */
596
+ dictionaryKeyPrefix: "",
597
+ },
598
+ };
599
+
600
+ module.exports = config;
601
+ ```
602
+
603
+ <Tabs>
604
+ <Tab value='Команда витягування'>
605
+
606
+ Запустіть екстрактор для перетворення компонентів і витягування вмісту
607
+
608
+ ```bash packageManager="npm"
609
+ npx intlayer extract
610
+ ```
611
+
612
+ ```bash packageManager="pnpm"
613
+ pnpm intlayer extract
614
+ ```
615
+
616
+ ```bash packageManager="yarn"
617
+ yarn intlayer extract
618
+ ```
619
+
620
+ ```bash packageManager="bun"
621
+ bunx intlayer extract
622
+ ```
623
+
624
+ </Tab>
625
+ <Tab value='Компілятор Babel'>
626
+
627
+ ```bash packageManager="npm"
628
+ npm install @intlayer/babel --save-dev
629
+ ```
630
+
631
+ ```bash packageManager="pnpm"
632
+ pnpm add @intlayer/babel --save-dev
633
+ ```
634
+
635
+ ```bash packageManager="yarn"
636
+ yarn add @intlayer/babel --save-dev
637
+ ```
638
+
639
+ ```bash packageManager="bun"
640
+ bun add @intlayer/babel --dev
641
+ ```
642
+
643
+ ```js fileName="babel.config.js"
644
+ const {
645
+ intlayerExtractBabelPlugin,
646
+ getExtractPluginOptions,
647
+ } = require("@intlayer/babel");
648
+
649
+ module.exports = {
650
+ presets: ["next/babel"],
651
+ plugins: [
652
+ // Витягування вмісту з компонентів у словники
653
+ [intlayerExtractBabelPlugin, getExtractPluginOptions()],
654
+ ],
655
+ };
656
+ ```
657
+
658
+ ```bash packageManager="npm"
659
+ npm run build # Або npm run dev
660
+ ```
661
+
662
+ ```bash packageManager="pnpm"
663
+ pnpm run build # Or pnpm run dev
664
+ ```
665
+
666
+ ```bash packageManager="yarn"
667
+ yarn build # Or yarn dev
668
+ ```
669
+
670
+ ```bash packageManager="bun"
671
+ bun run build # Or bun run dev
672
+ ```
673
+
674
+ </Tab>
675
+ </Tabs>
676
+
504
677
  ### Йдемо далі
505
678
 
506
679
  Для подальшого розвитку ви можете впровадити [візуальний редактор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_visual_editor.md) або винести ваш контент назовні за допомогою [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_CMS.md).