@intlayer/docs 9.1.2 → 9.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/blog/ar/rag_powered_documentation_assistant.md +7 -0
  2. package/blog/de/rag_powered_documentation_assistant.md +6 -0
  3. package/blog/en-GB/rag_powered_documentation_assistant.md +6 -0
  4. package/blog/es/rag_powered_documentation_assistant.md +7 -0
  5. package/blog/fr/i18n_meaning.md +7 -1
  6. package/blog/fr/list_i18n_technologies/frameworks/angular.md +5 -1
  7. package/blog/fr/rag_powered_documentation_assistant.md +6 -0
  8. package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +119 -42
  9. package/blog/hi/rag_powered_documentation_assistant.md +7 -0
  10. package/blog/id/rag_powered_documentation_assistant.md +6 -0
  11. package/blog/it/rag_powered_documentation_assistant.md +6 -0
  12. package/blog/ja/rag_powered_documentation_assistant.md +7 -0
  13. package/blog/ko/list_i18n_technologies/frameworks/react.md +7 -7
  14. package/blog/ko/rag_powered_documentation_assistant.md +6 -0
  15. package/blog/pl/rag_powered_documentation_assistant.md +6 -0
  16. package/blog/pt/rag_powered_documentation_assistant.md +6 -0
  17. package/blog/ru/rag_powered_documentation_assistant.md +7 -0
  18. package/blog/tr/intlayer_with_react-intl.md +3 -1
  19. package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +175 -42
  20. package/blog/tr/rag_powered_documentation_assistant.md +6 -0
  21. package/blog/uk/rag_powered_documentation_assistant.md +6 -0
  22. package/blog/vi/rag_powered_documentation_assistant.md +6 -0
  23. package/blog/zh/intlayer_with_i18next.md +87 -28
  24. package/blog/zh/intlayer_with_next-i18next.md +86 -29
  25. package/blog/zh/intlayer_with_next-intl.md +88 -28
  26. package/blog/zh/intlayer_with_react-i18next.md +87 -28
  27. package/blog/zh/intlayer_with_react-intl.md +88 -27
  28. package/blog/zh/intlayer_with_vue-i18n.md +117 -8
  29. package/blog/zh/rag_powered_documentation_assistant.md +6 -0
  30. package/dist/cjs/generated/blog.entry.cjs +27 -27
  31. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  32. package/dist/cjs/generated/docs.entry.cjs +234 -214
  33. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  34. package/dist/cjs/generated/frequentQuestions.entry.cjs +17 -17
  35. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  36. package/dist/cjs/generated/legal.entry.cjs +2 -2
  37. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  38. package/dist/esm/generated/blog.entry.mjs +27 -27
  39. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  40. package/dist/esm/generated/docs.entry.mjs +234 -214
  41. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  42. package/dist/esm/generated/frequentQuestions.entry.mjs +17 -17
  43. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  44. package/dist/esm/generated/legal.entry.mjs +2 -2
  45. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  46. package/dist/types/generated/docs.entry.d.ts +1 -0
  47. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  48. package/docs/ar/analytics.md +222 -0
  49. package/docs/ar/autoFill.md +28 -9
  50. package/docs/ar/configuration.md +25 -8
  51. package/docs/ar/dictionary/file.md +3 -1
  52. package/docs/ar/dictionary/nesting.md +47 -30
  53. package/docs/ar/formatters.md +148 -193
  54. package/docs/ar/intlayer_CMS.md +152 -0
  55. package/docs/ar/intlayer_with_angular_21.md +9 -9
  56. package/docs/ar/intlayer_with_nextjs_14.md +1 -28
  57. package/docs/ar/intlayer_with_nextjs_15.md +1 -33
  58. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +40 -83
  59. package/docs/ar/intlayer_with_solid_start.md +1078 -0
  60. package/docs/ar/intlayer_with_vite+vue.md +1 -3
  61. package/docs/ar/packages/intlayer/getLocalizedUrl.md +26 -24
  62. package/docs/ar/packages/intlayer/getMultilingualUrls.md +4 -18
  63. package/docs/ar/packages/react-intlayer/useDictionary.md +4 -21
  64. package/docs/ar/packages/react-intlayer/useIntlayer.md +2 -2
  65. package/docs/ar/packages/vite-intlayer/exports.md +15 -0
  66. package/docs/ar/packages/vite-intlayer/intlayer.md +121 -6
  67. package/docs/ar/packages/vite-intlayer/intlayerPrune.md +70 -3
  68. package/docs/ar/releases/v9.md +0 -37
  69. package/docs/ar/self_hosting.md +46 -49
  70. package/docs/bn/configuration.md +25 -8
  71. package/docs/bn/intlayer_with_angular_21.md +9 -9
  72. package/docs/cs/configuration.md +25 -8
  73. package/docs/cs/intlayer_with_angular_21.md +9 -9
  74. package/docs/de/analytics.md +222 -0
  75. package/docs/de/autoFill.md +28 -9
  76. package/docs/de/configuration.md +25 -8
  77. package/docs/de/dictionary/file.md +3 -1
  78. package/docs/de/dictionary/nesting.md +47 -31
  79. package/docs/de/formatters.md +208 -334
  80. package/docs/de/intlayer_CMS.md +66 -15
  81. package/docs/de/intlayer_with_angular_21.md +9 -9
  82. package/docs/de/intlayer_with_nestjs.md +11 -7
  83. package/docs/de/intlayer_with_nextjs_14.md +1 -28
  84. package/docs/de/intlayer_with_nextjs_15.md +1 -33
  85. package/docs/de/intlayer_with_solid_start.md +1078 -0
  86. package/docs/de/intlayer_with_vite+vue.md +1 -3
  87. package/docs/de/packages/intlayer/getLocalizedUrl.md +33 -25
  88. package/docs/de/packages/intlayer/getMultilingualUrls.md +4 -18
  89. package/docs/de/packages/react-intlayer/useDictionary.md +2 -5
  90. package/docs/de/packages/vite-intlayer/exports.md +15 -0
  91. package/docs/de/packages/vite-intlayer/intlayer.md +121 -6
  92. package/docs/de/packages/vite-intlayer/intlayerPrune.md +77 -4
  93. package/docs/de/releases/v9.md +0 -15
  94. package/docs/de/self_hosting.md +46 -50
  95. package/docs/en/cli/doc-review.md +13 -2
  96. package/docs/en/configuration.md +24 -15
  97. package/docs/en/intlayer_with_angular_21.md +9 -9
  98. package/docs/en/intlayer_with_solid_start.md +1091 -0
  99. package/docs/en/intlayer_with_vite+solid.md +12 -0
  100. package/docs/en-GB/analytics.md +222 -0
  101. package/docs/en-GB/autoFill.md +26 -7
  102. package/docs/en-GB/configuration.md +25 -8
  103. package/docs/en-GB/dictionary/file.md +2 -0
  104. package/docs/en-GB/dictionary/nesting.md +64 -205
  105. package/docs/en-GB/formatters.md +146 -181
  106. package/docs/en-GB/intlayer_CMS.md +152 -0
  107. package/docs/en-GB/intlayer_with_angular_21.md +9 -9
  108. package/docs/en-GB/intlayer_with_nestjs.md +6 -2
  109. package/docs/en-GB/intlayer_with_nextjs_14.md +0 -27
  110. package/docs/en-GB/intlayer_with_nextjs_15.md +1 -33
  111. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +40 -82
  112. package/docs/en-GB/intlayer_with_solid_start.md +1078 -0
  113. package/docs/en-GB/intlayer_with_vite+vue.md +1 -3
  114. package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +30 -22
  115. package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +16 -48
  116. package/docs/en-GB/packages/vite-intlayer/exports.md +15 -0
  117. package/docs/en-GB/packages/vite-intlayer/intlayer.md +121 -6
  118. package/docs/en-GB/packages/vite-intlayer/intlayerPrune.md +77 -4
  119. package/docs/en-GB/self_hosting.md +60 -49
  120. package/docs/es/analytics.md +222 -0
  121. package/docs/es/autoFill.md +28 -9
  122. package/docs/es/configuration.md +24 -7
  123. package/docs/es/dictionary/file.md +3 -1
  124. package/docs/es/dictionary/nesting.md +47 -30
  125. package/docs/es/formatters.md +114 -168
  126. package/docs/es/intlayer_CMS.md +35 -10
  127. package/docs/es/intlayer_with_angular_21.md +9 -9
  128. package/docs/es/intlayer_with_nextjs_14.md +1 -28
  129. package/docs/es/intlayer_with_nextjs_15.md +1 -33
  130. package/docs/es/intlayer_with_solid_start.md +1078 -0
  131. package/docs/es/packages/intlayer/getLocalizedUrl.md +31 -23
  132. package/docs/es/packages/intlayer/getMultilingualUrls.md +4 -18
  133. package/docs/es/packages/vite-intlayer/exports.md +15 -0
  134. package/docs/es/packages/vite-intlayer/intlayer.md +121 -6
  135. package/docs/es/packages/vite-intlayer/intlayerPrune.md +69 -2
  136. package/docs/es/releases/v9.md +0 -15
  137. package/docs/es/self_hosting.md +46 -49
  138. package/docs/fr/analytics.md +222 -0
  139. package/docs/fr/autoFill.md +27 -8
  140. package/docs/fr/configuration.md +25 -8
  141. package/docs/fr/dictionary/file.md +2 -0
  142. package/docs/fr/dictionary/nesting.md +37 -184
  143. package/docs/fr/formatters.md +95 -236
  144. package/docs/fr/intlayer_CMS.md +66 -15
  145. package/docs/fr/intlayer_with_angular_21.md +9 -9
  146. package/docs/fr/intlayer_with_nextjs_14.md +1 -28
  147. package/docs/fr/intlayer_with_nextjs_15.md +1 -33
  148. package/docs/fr/intlayer_with_solid_start.md +1078 -0
  149. package/docs/fr/packages/intlayer/getLocalizedUrl.md +37 -27
  150. package/docs/fr/packages/intlayer/getMultilingualUrls.md +18 -20
  151. package/docs/fr/packages/vite-intlayer/exports.md +15 -0
  152. package/docs/fr/packages/vite-intlayer/intlayer.md +121 -6
  153. package/docs/fr/packages/vite-intlayer/intlayerPrune.md +77 -4
  154. package/docs/fr/releases/v9.md +0 -15
  155. package/docs/fr/self_hosting.md +46 -49
  156. package/docs/hi/analytics.md +222 -0
  157. package/docs/hi/autoFill.md +28 -9
  158. package/docs/hi/configuration.md +25 -8
  159. package/docs/hi/dictionary/file.md +3 -1
  160. package/docs/hi/dictionary/nesting.md +47 -30
  161. package/docs/hi/formatters.md +233 -334
  162. package/docs/hi/how_works_intlayer.md +3 -1
  163. package/docs/hi/intlayer_CMS.md +152 -0
  164. package/docs/hi/intlayer_with_angular_21.md +9 -9
  165. package/docs/hi/intlayer_with_nestjs.md +11 -7
  166. package/docs/hi/intlayer_with_nextjs_14.md +1 -28
  167. package/docs/hi/intlayer_with_nextjs_15.md +1 -33
  168. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +40 -83
  169. package/docs/hi/intlayer_with_solid_start.md +1077 -0
  170. package/docs/hi/intlayer_with_vite+preact.md +56 -49
  171. package/docs/hi/intlayer_with_vite+react.md +48 -41
  172. package/docs/hi/intlayer_with_vite+solid.md +32 -41
  173. package/docs/hi/intlayer_with_vite+vue.md +49 -44
  174. package/docs/hi/packages/intlayer/getLocalizedUrl.md +26 -24
  175. package/docs/hi/packages/intlayer/getMultilingualUrls.md +4 -18
  176. package/docs/hi/packages/next-intlayer/t.md +33 -1
  177. package/docs/hi/packages/react-intlayer/useDictionary.md +4 -21
  178. package/docs/hi/packages/vite-intlayer/exports.md +15 -0
  179. package/docs/hi/packages/vite-intlayer/intlayer.md +121 -6
  180. package/docs/hi/packages/vite-intlayer/intlayerPrune.md +78 -5
  181. package/docs/hi/plugins/sync-json.md +9 -9
  182. package/docs/hi/releases/v9.md +0 -15
  183. package/docs/hi/self_hosting.md +38 -51
  184. package/docs/id/analytics.md +223 -0
  185. package/docs/id/configuration.md +25 -8
  186. package/docs/id/dictionary/nesting.md +37 -184
  187. package/docs/id/formatters.md +208 -305
  188. package/docs/id/intlayer_CMS.md +164 -0
  189. package/docs/id/intlayer_with_angular_21.md +9 -9
  190. package/docs/id/intlayer_with_nextjs_14.md +1 -26
  191. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +70 -63
  192. package/docs/id/intlayer_with_solid_start.md +1078 -0
  193. package/docs/id/packages/intlayer/getMultilingualUrls.md +4 -18
  194. package/docs/id/packages/react-intlayer/useIntlayer.md +2 -2
  195. package/docs/id/packages/vite-intlayer/exports.md +15 -0
  196. package/docs/id/packages/vite-intlayer/intlayer.md +121 -6
  197. package/docs/id/packages/vite-intlayer/intlayerPrune.md +78 -5
  198. package/docs/id/releases/v9.md +12 -0
  199. package/docs/id/self_hosting.md +61 -50
  200. package/docs/it/analytics.md +222 -0
  201. package/docs/it/autoFill.md +27 -8
  202. package/docs/it/configuration.md +25 -8
  203. package/docs/it/dictionary/file.md +3 -1
  204. package/docs/it/dictionary/nesting.md +47 -30
  205. package/docs/it/formatters.md +114 -168
  206. package/docs/it/intlayer_CMS.md +66 -15
  207. package/docs/it/intlayer_with_angular_21.md +9 -9
  208. package/docs/it/intlayer_with_nestjs.md +11 -7
  209. package/docs/it/intlayer_with_nextjs_14.md +1 -28
  210. package/docs/it/intlayer_with_nextjs_15.md +1 -33
  211. package/docs/it/intlayer_with_solid_start.md +1078 -0
  212. package/docs/it/intlayer_with_vite+vue.md +1 -3
  213. package/docs/it/packages/intlayer/getLocalizedUrl.md +34 -26
  214. package/docs/it/packages/intlayer/getMultilingualUrls.md +4 -18
  215. package/docs/it/packages/react-intlayer/useDictionary.md +4 -21
  216. package/docs/it/packages/vite-intlayer/exports.md +15 -0
  217. package/docs/it/packages/vite-intlayer/intlayer.md +121 -6
  218. package/docs/it/packages/vite-intlayer/intlayerPrune.md +77 -4
  219. package/docs/it/releases/v9.md +0 -15
  220. package/docs/it/self_hosting.md +60 -49
  221. package/docs/ja/analytics.md +222 -0
  222. package/docs/ja/autoFill.md +28 -9
  223. package/docs/ja/configuration.md +25 -8
  224. package/docs/ja/dictionary/content_file.md +15 -7
  225. package/docs/ja/dictionary/file.md +3 -1
  226. package/docs/ja/dictionary/nesting.md +47 -30
  227. package/docs/ja/formatters.md +133 -187
  228. package/docs/ja/intlayer_visual_editor.md +3 -1
  229. package/docs/ja/intlayer_with_angular_21.md +6 -6
  230. package/docs/ja/intlayer_with_nestjs.md +2 -12
  231. package/docs/ja/intlayer_with_nextjs_14.md +1 -28
  232. package/docs/ja/intlayer_with_nextjs_15.md +1 -33
  233. package/docs/ja/intlayer_with_react_router_v7.md +456 -20
  234. package/docs/ja/intlayer_with_solid_start.md +1078 -0
  235. package/docs/ja/intlayer_with_vite+preact.md +73 -41
  236. package/docs/ja/intlayer_with_vite+vue.md +1 -3
  237. package/docs/ja/mcp_server.md +3 -9
  238. package/docs/ja/packages/intlayer/getLocalizedUrl.md +26 -24
  239. package/docs/ja/packages/intlayer/getMultilingualUrls.md +3 -17
  240. package/docs/ja/packages/vite-intlayer/exports.md +15 -0
  241. package/docs/ja/packages/vite-intlayer/intlayer.md +121 -6
  242. package/docs/ja/packages/vite-intlayer/intlayerPrune.md +79 -6
  243. package/docs/ja/releases/v9.md +12 -0
  244. package/docs/ja/self_hosting.md +46 -50
  245. package/docs/ko/analytics.md +222 -0
  246. package/docs/ko/autoFill.md +28 -9
  247. package/docs/ko/configuration.md +25 -8
  248. package/docs/ko/dictionary/file.md +3 -1
  249. package/docs/ko/dictionary/nesting.md +47 -30
  250. package/docs/ko/formatters.md +133 -187
  251. package/docs/ko/intlayer_with_angular_21.md +9 -9
  252. package/docs/ko/intlayer_with_lynx+react.md +133 -39
  253. package/docs/ko/intlayer_with_nextjs_14.md +1 -28
  254. package/docs/ko/intlayer_with_nextjs_15.md +1 -33
  255. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +40 -188
  256. package/docs/ko/intlayer_with_solid_start.md +1078 -0
  257. package/docs/ko/intlayer_with_vite+preact.md +57 -23
  258. package/docs/ko/intlayer_with_vite+vue.md +1 -3
  259. package/docs/ko/packages/intlayer/getLocalizedUrl.md +26 -24
  260. package/docs/ko/packages/intlayer/getMultilingualUrls.md +4 -18
  261. package/docs/ko/packages/vite-intlayer/exports.md +15 -0
  262. package/docs/ko/packages/vite-intlayer/intlayer.md +121 -6
  263. package/docs/ko/packages/vite-intlayer/intlayerPrune.md +79 -6
  264. package/docs/ko/releases/v9.md +12 -0
  265. package/docs/ko/self_hosting.md +60 -49
  266. package/docs/nl/configuration.md +25 -8
  267. package/docs/nl/intlayer_with_angular_21.md +9 -9
  268. package/docs/pl/analytics.md +220 -0
  269. package/docs/pl/configuration.md +25 -8
  270. package/docs/pl/dictionary/nesting.md +47 -30
  271. package/docs/pl/formatters.md +208 -305
  272. package/docs/pl/intlayer_CMS.md +152 -0
  273. package/docs/pl/intlayer_with_angular_21.md +9 -9
  274. package/docs/pl/intlayer_with_nextjs_14.md +1 -26
  275. package/docs/pl/intlayer_with_solid_start.md +1078 -0
  276. package/docs/pl/packages/intlayer/getMultilingualUrls.md +4 -18
  277. package/docs/pl/packages/react-intlayer/useDictionary.md +2 -19
  278. package/docs/pl/packages/vite-intlayer/exports.md +15 -0
  279. package/docs/pl/packages/vite-intlayer/intlayer.md +121 -6
  280. package/docs/pl/packages/vite-intlayer/intlayerPrune.md +77 -4
  281. package/docs/pl/releases/v9.md +0 -15
  282. package/docs/pl/self_hosting.md +60 -49
  283. package/docs/pt/analytics.md +222 -0
  284. package/docs/pt/configuration.md +25 -8
  285. package/docs/pt/dictionary/file.md +3 -1
  286. package/docs/pt/dictionary/nesting.md +47 -30
  287. package/docs/pt/formatters.md +112 -168
  288. package/docs/pt/intlayer_CMS.md +66 -15
  289. package/docs/pt/intlayer_with_angular_21.md +9 -9
  290. package/docs/pt/intlayer_with_astro_lit.md +26 -1
  291. package/docs/pt/intlayer_with_nextjs_14.md +1 -28
  292. package/docs/pt/intlayer_with_nextjs_15.md +1 -33
  293. package/docs/pt/intlayer_with_solid_start.md +1078 -0
  294. package/docs/pt/intlayer_with_vite+vue.md +1 -3
  295. package/docs/pt/packages/intlayer/getLocalizedUrl.md +34 -26
  296. package/docs/pt/packages/intlayer/getMultilingualUrls.md +4 -18
  297. package/docs/pt/packages/vite-intlayer/exports.md +15 -0
  298. package/docs/pt/packages/vite-intlayer/intlayer.md +121 -6
  299. package/docs/pt/packages/vite-intlayer/intlayerPrune.md +78 -6
  300. package/docs/pt/releases/v9.md +0 -15
  301. package/docs/pt/self_hosting.md +60 -49
  302. package/docs/ru/analytics.md +222 -0
  303. package/docs/ru/autoFill.md +27 -8
  304. package/docs/ru/configuration.md +25 -8
  305. package/docs/ru/dictionary/file.md +3 -1
  306. package/docs/ru/dictionary/nesting.md +64 -205
  307. package/docs/ru/formatters.md +108 -128
  308. package/docs/ru/intlayer_with_angular_21.md +9 -9
  309. package/docs/ru/intlayer_with_nextjs_14.md +1 -28
  310. package/docs/ru/intlayer_with_nextjs_15.md +1 -33
  311. package/docs/ru/intlayer_with_solid_start.md +1078 -0
  312. package/docs/ru/intlayer_with_vite+vue.md +1 -3
  313. package/docs/ru/packages/intlayer/getLocalizedUrl.md +34 -26
  314. package/docs/ru/packages/intlayer/getMultilingualUrls.md +4 -18
  315. package/docs/ru/packages/react-intlayer/useDictionary.md +4 -21
  316. package/docs/ru/packages/vite-intlayer/exports.md +15 -0
  317. package/docs/ru/packages/vite-intlayer/intlayer.md +121 -6
  318. package/docs/ru/packages/vite-intlayer/intlayerPrune.md +77 -4
  319. package/docs/ru/releases/v9.md +0 -15
  320. package/docs/ru/self_hosting.md +60 -49
  321. package/docs/tr/analytics.md +222 -0
  322. package/docs/tr/autoFill.md +28 -9
  323. package/docs/tr/configuration.md +25 -8
  324. package/docs/tr/dictionary/file.md +2 -0
  325. package/docs/tr/dictionary/nesting.md +47 -30
  326. package/docs/tr/formatters.md +144 -190
  327. package/docs/tr/intlayer_CMS.md +152 -0
  328. package/docs/tr/intlayer_with_angular_21.md +9 -9
  329. package/docs/tr/intlayer_with_nestjs.md +2 -12
  330. package/docs/tr/intlayer_with_nextjs_15.md +1 -33
  331. package/docs/tr/intlayer_with_solid_start.md +1078 -0
  332. package/docs/tr/intlayer_with_vite+vue.md +1 -3
  333. package/docs/tr/packages/intlayer/getMultilingualUrls.md +4 -18
  334. package/docs/tr/packages/vite-intlayer/exports.md +15 -0
  335. package/docs/tr/packages/vite-intlayer/intlayer.md +121 -6
  336. package/docs/tr/packages/vite-intlayer/intlayerPrune.md +77 -4
  337. package/docs/tr/self_hosting.md +47 -50
  338. package/docs/uk/analytics.md +222 -0
  339. package/docs/uk/configuration.md +25 -8
  340. package/docs/uk/dictionary/nesting.md +47 -30
  341. package/docs/uk/formatters.md +128 -185
  342. package/docs/uk/intlayer_CMS.md +152 -0
  343. package/docs/uk/intlayer_with_angular_21.md +9 -9
  344. package/docs/uk/intlayer_with_nextjs_14.md +1 -26
  345. package/docs/uk/intlayer_with_solid_start.md +1078 -0
  346. package/docs/uk/packages/react-intlayer/useDictionary.md +2 -19
  347. package/docs/uk/packages/vite-intlayer/exports.md +15 -0
  348. package/docs/uk/packages/vite-intlayer/intlayer.md +121 -6
  349. package/docs/uk/packages/vite-intlayer/intlayerPrune.md +77 -4
  350. package/docs/uk/releases/v9.md +0 -15
  351. package/docs/uk/self_hosting.md +60 -50
  352. package/docs/ur/configuration.md +25 -8
  353. package/docs/ur/intlayer_with_angular_21.md +9 -9
  354. package/docs/vi/analytics.md +222 -0
  355. package/docs/vi/configuration.md +24 -8
  356. package/docs/vi/dictionary/nesting.md +37 -184
  357. package/docs/vi/formatters.md +208 -309
  358. package/docs/vi/intlayer_CMS.md +164 -0
  359. package/docs/vi/intlayer_with_angular_21.md +9 -9
  360. package/docs/vi/intlayer_with_nextjs_14.md +0 -25
  361. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +70 -63
  362. package/docs/vi/intlayer_with_solid_start.md +1078 -0
  363. package/docs/vi/packages/intlayer/getMultilingualUrls.md +4 -18
  364. package/docs/vi/packages/react-intlayer/useIntlayer.md +2 -2
  365. package/docs/vi/packages/vite-intlayer/exports.md +15 -0
  366. package/docs/vi/packages/vite-intlayer/intlayer.md +121 -6
  367. package/docs/vi/packages/vite-intlayer/intlayerPrune.md +77 -4
  368. package/docs/vi/plugins/sync-json.md +6 -6
  369. package/docs/vi/releases/v9.md +12 -0
  370. package/docs/vi/self_hosting.md +61 -50
  371. package/docs/zh/CI_CD.md +4 -0
  372. package/docs/zh/analytics.md +222 -0
  373. package/docs/zh/autoFill.md +28 -9
  374. package/docs/zh/configuration.md +24 -8
  375. package/docs/zh/dictionary/file.md +2 -0
  376. package/docs/zh/dictionary/nesting.md +47 -30
  377. package/docs/zh/formatters.md +140 -188
  378. package/docs/zh/intlayer_CMS.md +164 -0
  379. package/docs/zh/intlayer_with_analog.md +193 -3
  380. package/docs/zh/intlayer_with_angular_19.md +272 -3
  381. package/docs/zh/intlayer_with_angular_21.md +7 -7
  382. package/docs/zh/intlayer_with_create_react_app.md +348 -26
  383. package/docs/zh/intlayer_with_lynx+react.md +263 -4
  384. package/docs/zh/intlayer_with_nextjs_14.md +1 -28
  385. package/docs/zh/intlayer_with_nextjs_15.md +1 -33
  386. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +558 -1
  387. package/docs/zh/intlayer_with_nuxt.md +182 -7
  388. package/docs/zh/intlayer_with_react_router_v7.md +183 -25
  389. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +306 -42
  390. package/docs/zh/intlayer_with_solid_start.md +1077 -0
  391. package/docs/zh/intlayer_with_storybook.md +260 -3
  392. package/docs/zh/intlayer_with_svelte_kit.md +428 -48
  393. package/docs/zh/intlayer_with_tanstack+solid.md +713 -13
  394. package/docs/zh/intlayer_with_tanstack.md +731 -20
  395. package/docs/zh/intlayer_with_vanilla.md +314 -4
  396. package/docs/zh/intlayer_with_vite+lit.md +465 -4
  397. package/docs/zh/intlayer_with_vite+preact.md +422 -116
  398. package/docs/zh/intlayer_with_vite+react.md +324 -45
  399. package/docs/zh/intlayer_with_vite+react_compiler.md +228 -13
  400. package/docs/zh/intlayer_with_vite+solid.md +462 -32
  401. package/docs/zh/intlayer_with_vite+vanilla.md +497 -4
  402. package/docs/zh/mcp_server.md +3 -9
  403. package/docs/zh/packages/intlayer/getLocalizedUrl.md +26 -24
  404. package/docs/zh/packages/intlayer/getMultilingualUrls.md +4 -18
  405. package/docs/zh/packages/vite-intlayer/exports.md +29 -0
  406. package/docs/zh/packages/vite-intlayer/intlayer.md +121 -6
  407. package/docs/zh/packages/vite-intlayer/intlayerPrune.md +79 -6
  408. package/docs/zh/releases/v9.md +12 -0
  409. package/docs/zh/self_hosting.md +60 -50
  410. package/docs/zh-TW/intlayer_with_angular_21.md +7 -7
  411. package/package.json +6 -6
  412. package/src/generated/blog.entry.ts +27 -27
  413. package/src/generated/docs.entry.ts +234 -214
  414. package/src/generated/frequentQuestions.entry.ts +17 -17
  415. package/src/generated/legal.entry.ts +2 -2
@@ -70,9 +70,184 @@ Intlayer 不仅仅是一个 i18n 解决方案,还提供了一个**自托管的
70
70
 
71
71
  ---
72
72
 
73
- ### 第5步:在代码中使用 Intlayer
73
+ ## Nuxt 应用中设置 Intlayer 的分步指南
74
74
 
75
- 在整个 Nuxt 应用中使用 `useIntlayer` 组合式函数访问您的内容字典:
75
+ <Tabs defaultTab="video">
76
+ <Tab label="视频" value="video">
77
+
78
+ <iframe title="How to translate an Nuxt and Vue app using Intlayer? Discover Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/nhUcUAVQ6eQ?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
79
+
80
+ </Tab>
81
+ <Tab label="代码" value="code">
82
+
83
+ <iframe
84
+ src="https://ide.intlayer.org/aymericzip/intlayer-nuxt-4-template?file=intlayer.config.ts"
85
+ className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
86
+ title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
87
+ sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
88
+ loading="lazy"
89
+ />
90
+
91
+ </Tab>
92
+ <Tab label="演示" value="demo">
93
+
94
+ <iframe
95
+ src="https://intlayer-nuxt-4-template.vercel.app"
96
+ className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
97
+ title="Demo - intlayer-nuxt-4-template"
98
+ sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
99
+ loading="lazy"
100
+ />
101
+
102
+ </Tab>
103
+ </Tabs>
104
+
105
+ 查看 GitHub 上的[应用模板](https://github.com/aymericzip/intlayer-nuxt-4-template)。
106
+
107
+ <Steps>
108
+
109
+ <Step number={1} title="安装依赖">
110
+
111
+ 使用 npm 安装必要的包:
112
+
113
+ ```bash packageManager="npm"
114
+ npx intlayer init --interactive
115
+ ```
116
+
117
+ ```bash packageManager="pnpm"
118
+ pnpm dlx intlayer@canary init --interactive
119
+ ```
120
+
121
+ ```bash packageManager="yarn"
122
+ yarn dlx intlayer@canary init --interactive
123
+ ```
124
+
125
+ ```bash packageManager="bun"
126
+ bunx intlayer@canary init --interactive
127
+ ```
128
+
129
+ > `--interactive` 标志是可选的。如果您是 AI 代理,请使用 `intlayer-cli init`。
130
+
131
+ > 此命令将检测您的环境并安装所需的包。例如:
132
+
133
+ ```bash packageManager="npm"
134
+ npm install intlayer vue-intlayer
135
+ npm install --save-dev nuxt-intlayer
136
+ ```
137
+
138
+ ```bash packageManager="pnpm"
139
+ pnpm add intlayer vue-intlayer
140
+ pnpm add --save-dev nuxt-intlayer
141
+ ```
142
+
143
+ ```bash packageManager="yarn"
144
+ yarn add intlayer vue-intlayer
145
+ yarn add --save-dev nuxt-intlayer
146
+ ```
147
+
148
+ ```bash packageManager="bun"
149
+ bun add intlayer vue-intlayer
150
+ bun add --dev nuxt-intlayer
151
+ ```
152
+
153
+ - **intlayer**
154
+
155
+ 核心包,为配置管理、翻译、[内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)、转译和 [CLI 命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/index.md)提供国际化工具。
156
+
157
+ - **vue-intlayer**
158
+ 将 Intlayer 与 Vue 应用集成的包。为 Vue 组件提供 composables。
159
+
160
+ - **nuxt-intlayer**
161
+ 将 Intlayer 与 Nuxt 应用集成的 Nuxt 模块。它提供自动设置、locale 检测中间件、cookie 管理和 URL 重定向。
162
+
163
+ </Step>
164
+
165
+ <Step number={2} title="配置您的项目">
166
+
167
+ 创建一个配置文件来配置您的应用程序的语言:
168
+
169
+ ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
170
+ import { Locales, type IntlayerConfig } from "intlayer";
171
+
172
+ const config: IntlayerConfig = {
173
+ internationalization: {
174
+ locales: [
175
+ Locales.ENGLISH,
176
+ Locales.FRENCH,
177
+ Locales.SPANISH,
178
+ // 您的其他 locales
179
+ ],
180
+ defaultLocale: Locales.ENGLISH,
181
+ },
182
+ };
183
+
184
+ export default config;
185
+ ```
186
+
187
+ > 通过此配置文件,您可以设置本地化 URL、中间件重定向、cookie 名称、内容声明的位置和扩展名、禁用控制台中的 Intlayer 日志等。有关可用参数的完整列表,请参阅[配置文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)。
188
+
189
+ </Step>
190
+
191
+ <Step number={3} title="在您的 Nuxt 配置中集成 Intlayer">
192
+
193
+ 将 intlayer 模块添加到您的 Nuxt 配置中:
194
+
195
+ ```typescript fileName="nuxt.config.ts"
196
+ import { defineNuxtConfig } from "nuxt/config";
197
+
198
+ export default defineNuxtConfig({
199
+ // ... 您现有的 Nuxt 配置
200
+ modules: ["nuxt-intlayer"],
201
+ });
202
+ ```
203
+
204
+ > `nuxt-intlayer` 模块自动处理 Intlayer 与 Nuxt 的集成。它设置内容声明构建、在开发模式下监视文件、提供 locale 检测中间件,并管理本地化路由。
205
+
206
+ </Step>
207
+
208
+ <Step number={4} title="声明您的内容">
209
+
210
+ 创建并管理您的内容声明以存储翻译:
211
+
212
+ ```tsx fileName="content/home-page.content.ts" contentDeclarationFormat=["typescript", "esm", "cjs"]
213
+ import { type Dictionary, t } from "intlayer";
214
+
215
+ const content = {
216
+ key: "home-page",
217
+ content: {
218
+ title: t({
219
+ zh: "你好,世界",
220
+ en: "Hello world",
221
+ fr: "Bonjour le monde",
222
+ es: "Hola mundo",
223
+ }),
224
+ metaTitle: t({
225
+ zh: "欢迎 | 我的应用",
226
+ en: "Welcome | My Application",
227
+ fr: "Bienvenue | Mon Application",
228
+ es: "Bienvenido | Mi Aplicación",
229
+ }),
230
+ metaDescription: t({
231
+ zh: "发现由 Intlayer 支持的多语言 Nuxt 应用主页。",
232
+ en: "Discover your multilingual Nuxt app homepage powered by Intlayer.",
233
+ fr: "Découvrez la page d'accueil multilingue de votre application Nuxt propulsée par Intlayer.",
234
+ es: "Descubre la página de inicio multilingüe de tu aplicación Nuxt impulsada por Intlayer.",
235
+ }),
236
+ },
237
+ } satisfies Dictionary;
238
+
239
+ export default content;
240
+ ```
241
+
242
+ > 您的内容声明可以定义在应用程序中的任何位置,只要它们包含在 `contentDir` 目录中(默认情况下为 `./src`)。并匹配内容声明文件扩展名(默认情况下为 `.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}`)。
243
+
244
+ > 有关更多详细信息,请参阅[内容声明文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)。
245
+
246
+ </Step>
247
+
248
+ <Step number={5} title="在您的代码中使用 Intlayer">
249
+
250
+ 使用 `useIntlayer` composable 在整个 Nuxt 应用中访问您的内容字典:
76
251
 
77
252
  ```vue fileName="components/HelloWorld.vue"
78
253
  <script setup lang="ts">
@@ -80,7 +255,7 @@ import { ref } from "vue";
80
255
  import { useIntlayer } from "vue-intlayer";
81
256
 
82
257
  defineProps({
83
- msg: String, // 消息属性
258
+ msg: String,
84
259
  });
85
260
 
86
261
  const {
@@ -91,8 +266,8 @@ const {
91
266
  learnMore,
92
267
  nuxtDocs,
93
268
  readTheDocs,
94
- } = useIntlayer("helloworld"); // 使用名为 "helloworld" 的内容字典
95
- const countRef = ref(0); // 计数引用
269
+ } = useIntlayer("helloworld");
270
+ const countRef = ref(0);
96
271
  </script>
97
272
 
98
273
  <template>
@@ -110,11 +285,11 @@ const countRef = ref(0); // 计数引用
110
285
  <checkOut />
111
286
  <a href="https://nuxt.com/docs/getting-started/introduction" target="_blank"
112
287
  >Nuxt</a
113
- >,<nuxtIntlayer />
288
+ >, <nuxtIntlayer />
114
289
  </p>
115
290
  <p>
116
291
  <learnMore />
117
- <a href="https://nuxt.com" target="_blank"><nuxtDocs /></a>。
292
+ <a href="https://nuxt.com" target="_blank"><nuxtDocs /></a>.
118
293
  </p>
119
294
  <p class="read-the-docs"><readTheDocs /></p>
120
295
  <p class="read-the-docs">{{ readTheDocs }}</p>
@@ -81,9 +81,13 @@ Intlayer 不仅仅是一个 i18n 解决方案,还提供了一个**自托管的
81
81
 
82
82
  ---
83
83
 
84
- ### 第一步:安装依赖
84
+ ## 在 React Router v7 应用中设置 Intlayer 的分步指南
85
85
 
86
- 使用您喜欢的包管理器安装必要的包:
86
+ <Steps>
87
+
88
+ <Step number={1} title="安装依赖">
89
+
90
+ 使用您首选的包管理器安装必要的包:
87
91
 
88
92
  ```bash packageManager="npm"
89
93
  npx intlayer init --interactive
@@ -101,9 +105,9 @@ yarn dlx intlayer@canary init --interactive
101
105
  bunx intlayer@canary init --interactive
102
106
  ```
103
107
 
104
- > `--interactive` 标志是可选的。如果您是 AI 代理,请使用 `intlayer-cli init`。
108
+ > `--interactive` 标志是可选的。如果您是 AI agent,请使用 `intlayer-cli init`。
105
109
 
106
- > 该命令将检测您的环境并安装所需的软件包。例如:
110
+ > 此命令将检测您的环境并安装所需的包。例如:
107
111
 
108
112
  ```bash packageManager="npm"
109
113
  npm install intlayer react-intlayer
@@ -127,13 +131,21 @@ bun add vite-intlayer --dev
127
131
 
128
132
  - **intlayer**
129
133
 
130
- 提供国际化工具的核心包,用于配置管理、翻译、[内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)、转译以及[命令行工具](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/index.md)。
134
+ 核心包,提供国际化工具,用于配置管理、翻译、[内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)、转译和 [CLI 命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/index.md)。
131
135
 
132
136
  - **react-intlayer**
133
- 将 Intlayer 集成到 React 应用中的包。它提供了 React 国际化的上下文提供者和钩子。
137
+ 将 Intlayer React 应用集成的包。它为 React 国际化提供了上下文提供者和钩子。
134
138
 
135
139
  - **vite-intlayer**
136
- 包含用于将 Intlayer 集成到 [Vite 打包工具](https://vite.dev/guide/why.html#why-bundle-for-production) Vite 插件,以及用于检测用户首选语言、管理 Cookie 和处理 URL 重定向的中间件。
140
+ 包括用于将 Intlayer [Vite bundler](https://vite.dev/guide/why.html#why-bundle-for-production) 集成的 Vite 插件,以及用于检测用户首选区域设置、管理 cookie 和处理 URL 重定向的中间件。
141
+
142
+ </Step>
143
+
144
+ <Step number={2} title="配置您的项目">
145
+
146
+ </Step>
147
+
148
+ </Steps>
137
149
 
138
150
  ## 在 React Router v7 应用程序中使用基于文件系统的路由设置 Intlayer 的分步指南
139
151
 
@@ -236,9 +248,123 @@ export function Layout({
236
248
  }
237
249
  ```
238
250
 
239
- ### 第10步:添加HTML属性管理(可选)
251
+ #### 本地化主页
252
+
253
+ ```tsx fileName="app/routes/page.tsx"
254
+ import { getIntlayer, validatePrefix } from "intlayer";
255
+ import { useIntlayer } from "react-intlayer";
256
+ import { data } from "react-router";
257
+
258
+ import { LocaleSwitcher } from "~/components/locale-switcher";
259
+
260
+ import { Navbar } from "~/components/navbar";
261
+ import type { Route } from "./+types/page";
262
+
263
+ export const loader = ({ params }: Route.LoaderArgs) => {
264
+ const { locale } = params;
265
+
266
+ const { isValid } = validatePrefix(locale);
267
+
268
+ if (!isValid) {
269
+ throw data("Locale not supported", { status: 404 });
270
+ }
271
+ };
272
+
273
+ export const meta: Route.MetaFunction = ({ params }) => {
274
+ const content = getIntlayer("page", params.locale);
275
+
276
+ return [
277
+ { title: content.title },
278
+ { content: content.description, name: "description" },
279
+ ];
280
+ };
281
+
282
+ export default function Page() {
283
+ const { title, description, aboutLink } = useIntlayer("page");
284
+
285
+ return (
286
+ <div>
287
+ <h1>{title}</h1>
288
+ <p>{description}</p>
289
+ <nav>
290
+ <LocalizedLink to="/about">{aboutLink}</LocalizedLink>
291
+ </nav>
292
+ </div>
293
+ );
294
+ }
295
+ ```
296
+
297
+ > 了解更多关于 `useIntlayer` hook 的信息,请参考[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useIntlayer.md)。
298
+
299
+ > 如果你的应用已经存在,你可以使用 [Intlayer 编译器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md)以及[提取命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md),在一秒内转换数千个组件。
300
+
301
+ </Step>
302
+
303
+ <Step number={9} title="创建语言切换器组件">
304
+
305
+ 创建一个组件以允许用户更改语言:
306
+
307
+ ```tsx fileName="app/components/locale-switcher.tsx"
308
+ import type { FC } from "react";
309
+
310
+ import {
311
+ getHTMLTextDir,
312
+ getLocaleName,
313
+ getLocalizedUrl,
314
+ getPathWithoutLocale,
315
+ } from "intlayer";
316
+ import { setLocaleInStorage, useIntlayer, useLocale } from "react-intlayer";
317
+ import { Link, useLocation } from "react-router";
318
+
319
+ export const LocaleSwitcher: FC = () => {
320
+ const { localeSwitcherLabel } = useIntlayer("locale-switcher");
321
+ const { pathname } = useLocation();
322
+
323
+ const { availableLocales, locale } = useLocale();
324
+
325
+ const pathWithoutLocale = getPathWithoutLocale(pathname);
326
+
327
+ return (
328
+ <ol>
329
+ {availableLocales.map((localeItem) => (
330
+ <li key={localeItem}>
331
+ <Link
332
+ aria-current={localeItem === locale ? "page" : undefined}
333
+ aria-label={`${localeSwitcherLabel.value} ${getLocaleName(localeItem)}`}
334
+ onClick={() => setLocale(localeItem)}
335
+ to={getLocalizedUrl(pathWithoutLocale, localeItem)}
336
+ >
337
+ <span>
338
+ {/* 语言环境代码 - 例如 FR */}
339
+ {localeItem}
340
+ </span>
341
+ <span>
342
+ {/* 用其自身语言环境表示的语言 - 例如 Français */}
343
+ {getLocaleName(localeItem, locale)}
344
+ </span>
345
+ <span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
346
+ {/* 用当前语言环境表示的语言 - 例如当前语言环境设置为 Locales.SPANISH 时的 Francés */}
347
+ {getLocaleName(localeItem)}
348
+ </span>
349
+ <span dir="ltr" lang={Locales.ENGLISH}>
350
+ {/* 用英文表示的语言 - 例如 French */}
351
+ {getLocaleName(localeItem, Locales.ENGLISH)}
352
+ </span>
353
+ </Link>
354
+ </li>
355
+ ))}
356
+ </ol>
357
+ );
358
+ };
359
+ ```
360
+
361
+ > 了解更多关于 `useLocale` hook 的信息,请参考[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useLocale.md)。
362
+
363
+ </Step>
364
+
365
+ <Step number={10} title="添加 HTML 属性管理">
240
366
 
241
- 创建一个钩子来管理HTML lang 和 dir 属性:
367
+ 创建一个 hook 来管理 HTML lang 和 dir 属性:
242
368
 
243
369
  ```tsx fileName="app/hooks/useI18nHTMLAttributes.tsx"
244
370
  import { getHTMLTextDir } from "intlayer";
@@ -261,10 +387,10 @@ export const useI18nHTMLAttributes = () => {
261
387
  import { Outlet } from "react-router";
262
388
  import { IntlayerProvider } from "react-intlayer";
263
389
 
264
- import { useI18nHTMLAttributes } from "app/hooks/useI18nHTMLAttributes"; // 导入该钩子
390
+ import { useI18nHTMLAttributes } from "app/hooks/useI18nHTMLAttributes"; // 导入 hook
265
391
 
266
392
  export default function RootLayout() {
267
- useI18nHTMLAttributes(); // 调用该钩子
393
+ useI18nHTMLAttributes(); // 调用 hook
268
394
 
269
395
  return (
270
396
  <IntlayerProvider>
@@ -274,24 +400,52 @@ export default function RootLayout() {
274
400
  }
275
401
  ```
276
402
 
277
- <Steps>
403
+ </Step>
404
+
405
+ <Step number={11} title="添加中间件">
406
+
407
+ 你也可以使用 `intlayerProxy` 来为你的应用添加服务器端路由。这个插件将自动根据 URL 检测当前语言环境并设置适当的语言 cookie。如果未指定语言环境,该插件将根据用户的浏览器语言偏好确定最合适的语言环境。如果未检测到语言环境,它将重定向到默认语言环境。
408
+
409
+ > 注意,要在生产环境中使用 `intlayerProxy`,你需要将 `vite-intlayer` 包从 `devDependencies` 切换到 `dependencies`。
410
+
411
+ > 自 Intlayer v9 起,`intlayerProxy()` 直接捆绑在 `intlayer()` 插件中,并通过 `routing.enableProxy` 选项(默认为 `true`)默认启用。如下所示单独注册它现在是可选的 — 它保留用于向后兼容性和需要控制插件顺序的设置。设置 `routing.enableProxy: false` 以选择退出。查看 [v9 发布说明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/releases/v9.md)。
412
+
413
+ ```typescript {3,7} fileName="vite.config.ts"
414
+ import { defineConfig } from "vite";
415
+ import react from "@vitejs/plugin-react-swc";
416
+ import { intlayer } from "vite-intlayer";
417
+
418
+ // https://vitejs.dev/config/
419
+ export default defineConfig({
420
+ plugins: [
421
+ react(),
422
+ intlayer({
423
+ proxy: {
424
+ ignore: (req) => req.url?.startsWith("/api"),
425
+ },
426
+ }),
427
+ ],
428
+ });
429
+ ```
430
+
431
+ </Step>
278
432
 
279
- <Step number={1} title="提取组件内容" isOptional={true}>
433
+ <Step number={12} title="提取组件的内容" isOptional={true}>
280
434
 
281
- 如果您有现有的代码库,转换数千个文件可能会非常耗时。
435
+ 如果你有一个现有的代码库,转换数千个文件可能很耗时。
282
436
 
283
- 为了简化此过程,Intlayer 提出了 [编译器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md) / [提取器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md) 来转换您的组件并提取内容。
437
+ 为了简化这个过程,Intlayer 提供了一个[编译器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md) / [提取器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md)来转换你的组件并提取内容。
284
438
 
285
- 要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
439
+ 要进行设置,你可以在 `intlayer.config.ts` 文件中添加一个 `compiler` 部分:
286
440
 
287
441
  ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
288
442
  import { type IntlayerConfig } from "intlayer";
289
443
 
290
444
  const config: IntlayerConfig = {
291
- // ... 您的其他配置
445
+ // ... 其余配置
292
446
  compiler: {
293
447
  /**
294
- * 指示是否应启用编译器。
448
+ * 指示编译器是否应该被启用。
295
449
  */
296
450
  enabled: true,
297
451
 
@@ -301,12 +455,16 @@ const config: IntlayerConfig = {
301
455
  output: ({ fileName, extension }) => `./${fileName}${extension}`,
302
456
 
303
457
  /**
304
- * 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
458
+ * 指示组件在转换后是否应该被保存。
459
+ *
460
+ * - 如果为 `true`,编译器将重新将组件文件写入磁盘。因此转换将是永久的,编译器将跳过下一个过程的转换。这样,编译器可以转换应用,然后可以删除它。
461
+ *
462
+ * - 如果为 `false`,编译器仅在构建输出中注入 `useIntlayer()` 函数调用,并保持基础代码库完整。转换仅在内存中完成。
305
463
  */
306
464
  saveComponents: false,
307
465
 
308
466
  /**
309
- * 字典键前缀
467
+ * 词典键前缀
310
468
  */
311
469
  dictionaryKeyPrefix: "",
312
470
  },
@@ -318,7 +476,7 @@ export default config;
318
476
  <Tabs>
319
477
  <Tab value='提取命令'>
320
478
 
321
- 运行提取器以转换组件并提取内容
479
+ 运行提取器来转换你的组件并提取内容
322
480
 
323
481
  ```bash packageManager="npm"
324
482
  npx intlayer extract
@@ -339,9 +497,9 @@ bun x intlayer extract
339
497
  </Tab>
340
498
  <Tab value='Babel 编译器'>
341
499
 
342
- > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
500
+ > v9 起,`intlayerCompiler` 已包含在 `intlayer` 插件中。因此你不需要手动添加它。
343
501
 
344
- 更新您的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
502
+ 更新你的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
345
503
 
346
504
  ```ts fileName="vite.config.ts"
347
505
  import { defineConfig } from "vite";
@@ -350,7 +508,7 @@ import { intlayer, intlayerCompiler } from "vite-intlayer";
350
508
  export default defineConfig({
351
509
  plugins: [
352
510
  intlayer(),
353
- intlayerCompiler(), // Adds the compiler plugin
511
+ intlayerCompiler(), // 添加编译器插件
354
512
  ],
355
513
  });
356
514
  ```
@@ -368,7 +526,7 @@ yarn build # 或 yarn dev
368
526
  ```
369
527
 
370
528
  ```bash packageManager="bun"
371
- bun run build # Or bun run dev
529
+ bun run build # bun run dev
372
530
  ```
373
531
 
374
532
  </Tab>