@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-10
@@ -92,7 +92,7 @@ Intlayer поддерживает форматы файлов конфигура
92
92
 
93
93
  ## Пример файла конфигурации
94
94
 
95
- ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
95
+ ````typescript fileName="intlayer.config.ts" codeFormat="typescript"
96
96
  import { Locales, type IntlayerConfig } from "intlayer";
97
97
  import { nextjsRewrite } from "intlayer/routing";
98
98
  import { z } from "zod";
@@ -190,7 +190,7 @@ const config: IntlayerConfig = {
190
190
  * Options: 'cookie', 'localStorage', 'sessionStorage', 'header', or an array of these.
191
191
  * Default: ['cookie', 'header']
192
192
  */
193
- storage: "cookie",
193
+ storage: ["cookie", "header"],
194
194
 
195
195
  /**
196
196
  * Base path for the application URLs.
@@ -256,13 +256,13 @@ const config: IntlayerConfig = {
256
256
  editor: {
257
257
  /**
258
258
  * Whether the visual editor is enabled.
259
- * Default: true
259
+ * Default: false
260
260
  */
261
261
  enabled: true,
262
262
 
263
263
  /**
264
264
  * URL of your application for origin validation.
265
- * Default: "*"
265
+ * Default: ""
266
266
  */
267
267
  applicationURL: "http://localhost:3000",
268
268
 
@@ -321,18 +321,16 @@ const config: IntlayerConfig = {
321
321
  /**
322
322
  * Global context to guide the AI in generating translations.
323
323
  */
324
- applicationContext: "This is a travel booking application.",
325
-
326
- /**
327
- * Base URL for the AI API.
328
- */
329
324
  baseURL: "http://localhost:3000",
330
325
 
331
326
  /**
332
- * Data serialization format to use for the AI features of Intlayer.
333
- * - "json": The industry standard. Highly reliable and structured, but consumes more tokens.
334
- * - "toon": An optimized format designed to reduce token consumption (cost-effective). However, it may slightly increase the risk of output inconsistency compared to standard JSON
335
- * Default: "json"
327
+ * Сериализация данных
328
+ *
329
+ * Опции:
330
+ * - "json": Стандартный, надежный; использует больше токенов.
331
+ * - "toon": Меньше токенов, менее последователен, чем JSON.
332
+ *
333
+ * По умолчанию: "json"
336
334
  */
337
335
  dataSerialization: "json",
338
336
  },
@@ -434,42 +432,70 @@ const config: IntlayerConfig = {
434
432
  compiler: {
435
433
  /**
436
434
  * Указывает, должен ли компилятор быть включен.
435
+ *
436
+ * - false : Отключить компилятор.
437
+ * - true : Включить компилятор.
438
+ * - "build-only" : Пропустить компилятор во время разработки для ускорения запуска.
439
+ *
440
+ * По умолчанию : false
437
441
  */
438
442
  enabled: true,
439
443
 
440
444
  /**
441
- * Pattern to traverse the code to optimize.
442
- */
443
- transformPattern: [
444
- "**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}",
445
- "!**/node_modules/**",
446
- ],
447
-
448
- /**
449
- * Pattern to exclude from the optimization.
445
+ * Определяет путь к выходным файлам. Заменяет `outputDir`.
446
+ *
447
+ * - Пути `./` разрешаются относительно каталога компонента.
448
+ * - Пути `/` разрешаются относительно корня проекта (`baseDir`).
449
+ *
450
+ * - Включение переменной `{{locale}}` в путь приведет к генерации отдельных словарей для каждой локали.
451
+ *
452
+ * Пример:
453
+ * ```ts
454
+ * {
455
+ * // Создавать многоязычные файлы .content.ts рядом с компонентом
456
+ * output: ({ fileName, extension }) => `./${fileName}${extension}`,
457
+ *
458
+ * // output: './{{fileName}}{{extension}}', // Эквивалент с использованием строки шаблона
459
+ * }
460
+ * ```
461
+ *
462
+ * ```ts
463
+ * {
464
+ * // Создавать централизованные JSON по локалям в корне проекта
465
+ * output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
466
+ *
467
+ * // output: '/locales/{{locale}}/{{key}}.content.json', // Эквивалент с использованием строки шаблона
468
+ * }
469
+ * ```
470
+ *
471
+ * Список переменных:
472
+ * - `fileName`: Имя файла.
473
+ * - `key`: Ключ контента.
474
+ * - `locale`: Локаль контента.
475
+ * - `extension`: Расширение файла.
476
+ * - `componentFileName`: Имя файла компонента.
477
+ * - `componentExtension`: Расширение файла компонента.
478
+ * - `format`: Формат словаря.
479
+ * - `componentFormat`: Формат словаря компонента.
480
+ * - `componentDirPath`: Путь к каталогу компонента.
450
481
  */
451
- excludePattern: ["**/node_modules/**"],
482
+ output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
452
483
 
453
484
  /**
454
- * Выходной каталог для оптимизированных словарей.
485
+ * Указывает, должны ли компоненты сохраняться после трансформации.
486
+ * Таким образом, компилятор можно запустить только один раз для трансформации приложения, а затем удалить.
455
487
  */
456
- output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
488
+ saveComponents: false,
457
489
 
458
490
  /**
459
- * Вставьте только содержимое в сгенерированный файл, без ключа.
491
+ * Вставьте только содержимое в сгенерированный файл. Полезно для вывода JSON i18next или ICU MessageFormat для каждой локали.
460
492
  */
461
493
  noMetadata: false,
462
494
 
463
495
  /**
464
496
  * Префикс ключа словаря
465
497
  */
466
- dictionaryKeyPrefix: "", // Remove base prefix
467
-
468
- /**
469
- * Указывает, должны ли компоненты сохраняться после трансформации.
470
- * Таким образом, компилятор можно запустить только один раз для трансформации приложения, а затем удалить.
471
- */
472
- saveComponents: false,
498
+ dictionaryKeyPrefix: "", // Добавьте необязательный префикс для извлеченных ключей словаря
473
499
  },
474
500
 
475
501
  /**
@@ -488,7 +514,7 @@ const config: IntlayerConfig = {
488
514
  };
489
515
 
490
516
  export default config;
491
- ```
517
+ ````
492
518
 
493
519
  ## Справочник по конфигурации
494
520
 
@@ -996,25 +1022,6 @@ Intlayer поддерживает несколько провайдеров ИИ
996
1022
  - _Примечание_: Эта опция зависит от плагинов `@intlayer/babel` и `@intlayer/swc`.
997
1023
  - _Примечание_: Убедитесь, что все ключи объявлены статически в вызовах `useIntlayer`, например `useIntlayer('navbar')`.
998
1024
 
999
- - **importMode**:
1000
- - _Примечание_: **Deprecated**: Use `dictionary.importMode` instead.
1001
- - _Тип_: `'static' | 'dynamic' | 'fetch'`
1002
- - _По умолчанию_: `'static'`
1003
- - _Описание_: Управляет способом импорта словарей.
1004
- - _Пример_: `'dynamic'`
1005
- - _Примечание_: Доступные режимы:
1006
- - "static": Словари импортируются статически. Заменяет `useIntlayer` на `useDictionary`.
1007
- - "dynamic": Словари импортируются динамически с использованием Suspense. Заменяет `useIntlayer` на `useDictionaryDynamic`.
1008
- - "fetch": Словари загружаются динамически с использованием API живой синхронизации. Заменяет `useIntlayer` на `useDictionaryFetch`.
1009
- - _Примечание_: Динамические импорты зависят от Suspense и могут незначительно повлиять на производительность рендеринга.
1010
- - _Примечание_: Если отключено, все локали будут загружены одновременно, даже если они не используются.
1011
- - _Примечание_: Эта опция зависит от плагинов `@intlayer/babel` и `@intlayer/swc`.
1012
- - _Примечание_: Убедитесь, что все ключи объявлены статически в вызовах `useIntlayer`, например `useIntlayer('navbar')`.
1013
- - _Примечание_: Эта опция будет игнорироваться, если `optimize` отключен.
1014
- - _Примечание_: Если установлено значение "live", только словари, содержащие удалённый контент и помеченные флагом "live", будут преобразованы в режим live. Остальные будут импортироваться динамически в режиме "dynamic" для оптимизации количества запросов и производительности загрузки.
1015
- - _Примечание_: Режим live использует API живой синхронизации для получения словарей. Если вызов API не удаётся, словари будут импортированы динамически в режиме "dynamic".
1016
- - _Примечание_: Эта опция не повлияет на функции `getIntlayer`, `getDictionary`, `useDictionary`, `useDictionaryAsync` и `useDictionaryDynamic`.
1017
-
1018
1025
  - **outputFormat**:
1019
1026
  - _Тип_: `'esm' | 'cjs'`
1020
1027
  - _По умолчанию_: `'esm'`
@@ -1048,7 +1055,7 @@ Intlayer поддерживает несколько провайдеров ИИ
1048
1055
 
1049
1056
  - **dictionaryKeyPrefix**:
1050
1057
  - _Тип_: `string`
1051
- - _По умолчанию_: `'comp-'`
1058
+ - _По умолчанию_: `''`
1052
1059
  - _Описание_: Префикс для извлеченных ключей словаря.
1053
1060
  - _Пример_: `'my-key-'`
1054
1061
  - _Примечание_: При извлечении словарей ключ генерируется на основе имени файла. Этот префикс добавляется к сгенерированному ключу для предотвращения конфликтов.
@@ -1072,24 +1079,28 @@ Intlayer поддерживает несколько провайдеров ИИ
1072
1079
  - _Описание_: Шаблоны, определяющие, какие файлы должны быть исключены во время оптимизации.
1073
1080
  - _Пример_: `['**/node_modules/**', '!**/node_modules/react/**']`
1074
1081
 
1075
- - **outputDir**:
1076
- - _Тип_: `string`
1077
- - _По умолчанию_: `'compiler'`
1078
- - _Описание_: Каталог, в котором будут храниться извлеченные словари, относительно базового пути вашего проекта.
1079
-
1080
1082
  - **output**:
1081
1083
  - _Тип_: `FilePathPattern`
1082
- - _По умолчанию_: `({ key }) => 'compiler/${key}.content.json'`
1083
- - _Описание_: Определяет путь к выходным файлам. Заменяет `outputDir`. Поддерживает динамические переменные, такие как `{{locale}}`, `{{key}}`, `{{fileName}}`, `{{extension}}`, `{{format}}`, `{{dirPath}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{componentFormat}}`. Может быть задано как строка в формате `'my/{{var}}/path'` или как функция.
1084
- - _Примечание_: `./**/*` Пути разрешаются относительно компонента. `/**/*` пути разрешаются относительно `baseDir` Intlayer.
1085
- - _Пример_: `output: ({ locale, key }) => 'compiler/${locale}/${key}.json'`
1084
+ - _По умолчанию_: `undefined`
1085
+ - _Описание_: Определяет путь к выходным файлам. Заменяет `outputDir`. Поддерживает динамические переменные через шаблоны строк или функцию. Поддерживаемые переменные: `{{fileName}}`, `{{key}}`, `{{locale}}`, `{{extension}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{format}}`, `{{componentFormat}}` и `{{componentDirPath}}`.
1086
+ - _Примечание_: Пути `./` разрешаются относительно каталога компонента. Пути `/` разрешаются относительно корня проекта (`baseDir`).
1087
+ - _Примечание_: Включение переменной `{{locale}}` в путь приведет к генерации отдельных словарей для каждой локали.
1088
+ - _Пример_:
1089
+ - **Мультиязычные файлы рядом с компонентом**:
1090
+ - Строка: `'./{{fileName}}{{extension}}'`
1091
+ - Функция: `({ fileName, extension }) => \`./${fileName}${extension}\``
1092
+
1093
+ - **Централизованный JSON по локалям**:
1094
+ - Строка: `'/locales/{{locale}}/{{key}}.content.json'`
1095
+ - Функция: `({ key, locale }) => \`/locales/${locale}/${key}.content.json\``
1086
1096
 
1087
1097
  - **noMetadata**:
1088
1098
  - _Тип_: `boolean`
1089
1099
  - _По умолчанию_: `false`
1090
- - _Описание_: Указывает, должны ли метаданные сохраняться в файле. Если true, компилятор не будет сохранять метаданные словарей (ключ, оболочка содержимого).
1100
+ - _Описание_: Указывает, должны ли метаданные сохраняться в файле. Если true, компилятор не будет сохранять метаданные словарей (ключ, оболочка содержимого). Полезно для вывода JSON i18next или ICU MessageFormat для каждой локали.
1091
1101
  - _Примечание_: Полезно при использовании с плагином `loadJSON`.
1092
- - _Пример_: Если `true`:
1102
+ - _Пример_:
1103
+ Если `true`:
1093
1104
  ```json
1094
1105
  {
1095
1106
  "key": "value"
@@ -344,8 +344,8 @@ Intlayer использует расширение модулей (module augmen
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 augmen
400
400
 
401
401
  Для этого вы можете добавить следующие инструкции в ваш файл `.gitignore`:
402
402
 
403
- ```plaintext
404
- # Игнорировать файлы, созданные Intlayer
403
+ ```bash
404
+ # Игнорировать файлы, созданные Intlayer
405
405
  .intlayer
406
406
  ```
407
407
 
@@ -218,8 +218,8 @@ Intlayer использует расширение модулей, чтобы п
218
218
 
219
219
  Для этого вы можете добавить следующие инструкции в ваш файл `.gitignore`:
220
220
 
221
- ```plaintext
222
- # Игнорировать файлы, сгенерированные Intlayer
221
+ ```bash
222
+ # Игнорировать файлы, сгенерированные Intlayer
223
223
  .intlayer
224
224
  ```
225
225
 
@@ -504,8 +504,8 @@ Intlayer генерирует определения типов в скрыто
504
504
 
505
505
  Чтобы избежать коммита автоматически сгенерированных файлов Intlayer, добавьте следующее в ваш `.gitignore`:
506
506
 
507
- ```plaintext
508
- # Игнорировать файлы, сгенерированные Intlayer
507
+ ```bash
508
+ # Игнорировать файлы, сгенерированные Intlayer
509
509
  .intlayer
510
510
  ```
511
511
 
@@ -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 augmen
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/ru/compiler.md) / [экстрактор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/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/ru/intlayer_visual_editor.md) или экстернализировать ваш контент с помощью [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/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. Следуйте документации для интернационализации (i18n) и перевода вашего приложения с помощью ИИ.
6
6
  keywords:
@@ -501,6 +501,179 @@ Intlayer использует расширение модулей (module augmen
501
501
 
502
502
  Для получения подробной информации об использовании расширения см. [документацию расширения Intlayer для VS Code](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/ru/compiler.md) / [экстрактор](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/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/ru/intlayer_visual_editor.md) или вынести свой контент во внешнюю среду с помощью [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/intlayer_CMS.md).