@intlayer/docs 6.1.6-canary.0 → 7.0.0-canary.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 (999) hide show
  1. package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +14 -0
  2. package/blog/en/{intlayer_with_next-i18next.mdx → _intlayer_with_next-i18next.md} +69 -72
  3. package/blog/en/{intlayer_with_next-intl.mdx → _intlayer_with_next-intl.md} +52 -56
  4. package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +85 -80
  5. package/dist/cjs/_virtual/rolldown_runtime.cjs +25 -0
  6. package/dist/cjs/blog.cjs +20 -45
  7. package/dist/cjs/blog.cjs.map +1 -1
  8. package/dist/cjs/common.cjs +60 -136
  9. package/dist/cjs/common.cjs.map +1 -1
  10. package/dist/cjs/doc.cjs +20 -45
  11. package/dist/cjs/doc.cjs.map +1 -1
  12. package/dist/cjs/frequentQuestions.cjs +20 -45
  13. package/dist/cjs/frequentQuestions.cjs.map +1 -1
  14. package/dist/cjs/generated/blog.entry.cjs +438 -407
  15. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  16. package/dist/cjs/generated/docs.entry.cjs +1407 -1118
  17. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  18. package/dist/cjs/generated/frequentQuestions.entry.cjs +286 -254
  19. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  20. package/dist/cjs/generated/legal.entry.cjs +58 -78
  21. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  22. package/dist/cjs/index.cjs +33 -29
  23. package/dist/cjs/legal.cjs +20 -45
  24. package/dist/cjs/legal.cjs.map +1 -1
  25. package/dist/esm/blog.mjs +7 -17
  26. package/dist/esm/blog.mjs.map +1 -1
  27. package/dist/esm/common.mjs +45 -102
  28. package/dist/esm/common.mjs.map +1 -1
  29. package/dist/esm/doc.mjs +7 -17
  30. package/dist/esm/doc.mjs.map +1 -1
  31. package/dist/esm/frequentQuestions.mjs +7 -17
  32. package/dist/esm/frequentQuestions.mjs.map +1 -1
  33. package/dist/esm/generated/blog.entry.mjs +433 -382
  34. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  35. package/dist/esm/generated/docs.entry.mjs +1402 -1093
  36. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  37. package/dist/esm/generated/frequentQuestions.entry.mjs +281 -229
  38. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  39. package/dist/esm/generated/legal.entry.mjs +53 -53
  40. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  41. package/dist/esm/index.mjs +6 -5
  42. package/dist/esm/legal.mjs +7 -17
  43. package/dist/esm/legal.mjs.map +1 -1
  44. package/dist/types/blog.d.ts +17 -12
  45. package/dist/types/blog.d.ts.map +1 -1
  46. package/dist/types/common.d.ts +30 -25
  47. package/dist/types/common.d.ts.map +1 -1
  48. package/dist/types/doc.d.ts +17 -12
  49. package/dist/types/doc.d.ts.map +1 -1
  50. package/dist/types/frequentQuestions.d.ts +17 -12
  51. package/dist/types/frequentQuestions.d.ts.map +1 -1
  52. package/dist/types/generated/blog.entry.d.ts +28 -24
  53. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  54. package/dist/types/generated/docs.entry.d.ts +79 -69
  55. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  56. package/dist/types/generated/frequentQuestions.entry.d.ts +20 -15
  57. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  58. package/dist/types/generated/legal.entry.d.ts +8 -4
  59. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  60. package/dist/types/index.d.ts +5 -5
  61. package/dist/types/legal.d.ts +17 -12
  62. package/dist/types/legal.d.ts.map +1 -1
  63. package/docs/ar/CI_CD.md +4 -6
  64. package/docs/ar/autoFill.md +10 -8
  65. package/docs/ar/configuration.md +16 -10
  66. package/docs/ar/dictionary/content_file.md +7 -7
  67. package/docs/ar/dictionary/enumeration.md +4 -4
  68. package/docs/ar/dictionary/file.md +4 -4
  69. package/docs/ar/dictionary/function_fetching.md +4 -4
  70. package/docs/ar/dictionary/gender.md +4 -6
  71. package/docs/ar/dictionary/insertion.md +4 -4
  72. package/docs/ar/dictionary/translation.md +4 -4
  73. package/docs/ar/formatters.md +19 -33
  74. package/docs/ar/how_works_intlayer.md +5 -5
  75. package/docs/ar/index.md +4 -4
  76. package/docs/ar/interest_of_intlayer.md +7 -7
  77. package/docs/ar/intlayer_CMS.md +10 -8
  78. package/docs/ar/intlayer_cli.md +7 -7
  79. package/docs/ar/intlayer_visual_editor.md +5 -5
  80. package/docs/ar/intlayer_with_angular.md +8 -8
  81. package/docs/ar/intlayer_with_astro.md +244 -0
  82. package/docs/ar/intlayer_with_create_react_app.md +9 -8
  83. package/docs/ar/intlayer_with_express.md +8 -8
  84. package/docs/ar/intlayer_with_lynx+react.md +6 -6
  85. package/docs/ar/intlayer_with_nestjs.md +8 -10
  86. package/docs/ar/intlayer_with_nextjs_14.md +4 -4
  87. package/docs/ar/intlayer_with_nextjs_15.md +9 -8
  88. package/docs/ar/intlayer_with_nextjs_page_router.md +8 -8
  89. package/docs/ar/intlayer_with_nuxt.md +8 -8
  90. package/docs/ar/intlayer_with_react_native+expo.md +17 -26
  91. package/docs/ar/intlayer_with_react_router_v7.md +199 -245
  92. package/docs/ar/intlayer_with_tanstack.md +203 -279
  93. package/docs/ar/intlayer_with_vite+preact.md +15 -15
  94. package/docs/ar/intlayer_with_vite+react.md +14 -14
  95. package/docs/ar/intlayer_with_vite+solid.md +6 -6
  96. package/docs/ar/intlayer_with_vite+svelte.md +6 -6
  97. package/docs/ar/intlayer_with_vite+vue.md +15 -15
  98. package/docs/ar/introduction.md +4 -4
  99. package/docs/ar/locale_mapper.md +4 -6
  100. package/docs/ar/mcp_server.md +13 -9
  101. package/docs/ar/packages/express-intlayer/t.md +4 -4
  102. package/docs/ar/packages/intlayer/getConfiguration.md +4 -4
  103. package/docs/ar/packages/intlayer/getEnumeration.md +4 -4
  104. package/docs/ar/packages/intlayer/getHTMLTextDir.md +4 -4
  105. package/docs/ar/packages/intlayer/getLocaleLang.md +4 -4
  106. package/docs/ar/packages/intlayer/getLocaleName.md +4 -4
  107. package/docs/ar/packages/intlayer/getLocalizedUrl.md +4 -4
  108. package/docs/ar/packages/intlayer/getMultilingualUrls.md +4 -4
  109. package/docs/ar/packages/intlayer/getTranslation.md +4 -4
  110. package/docs/ar/packages/intlayer/getTranslationContent.md +4 -4
  111. package/docs/ar/packages/next-intlayer/t.md +4 -4
  112. package/docs/ar/packages/next-intlayer/useDictionary.md +4 -4
  113. package/docs/ar/packages/next-intlayer/useIntlayer.md +4 -4
  114. package/docs/ar/packages/next-intlayer/useLocale.md +4 -4
  115. package/docs/ar/packages/react-intlayer/t.md +4 -4
  116. package/docs/ar/packages/react-intlayer/useDictionary.md +4 -4
  117. package/docs/ar/packages/react-intlayer/useLocale.md +4 -4
  118. package/docs/ar/per_locale_file.md +4 -4
  119. package/docs/ar/roadmap.md +7 -5
  120. package/docs/ar/testing.md +4 -7
  121. package/docs/ar/vs_code_extension.md +13 -9
  122. package/docs/de/CI_CD.md +4 -6
  123. package/docs/de/autoFill.md +10 -8
  124. package/docs/de/configuration.md +16 -10
  125. package/docs/de/dictionary/content_file.md +7 -7
  126. package/docs/de/dictionary/enumeration.md +4 -4
  127. package/docs/de/dictionary/file.md +4 -4
  128. package/docs/de/dictionary/function_fetching.md +4 -4
  129. package/docs/de/dictionary/gender.md +4 -6
  130. package/docs/de/dictionary/insertion.md +4 -4
  131. package/docs/de/dictionary/translation.md +4 -4
  132. package/docs/de/formatters.md +25 -57
  133. package/docs/de/how_works_intlayer.md +5 -7
  134. package/docs/de/index.md +4 -4
  135. package/docs/de/interest_of_intlayer.md +7 -7
  136. package/docs/de/intlayer_CMS.md +10 -8
  137. package/docs/de/intlayer_cli.md +7 -7
  138. package/docs/de/intlayer_visual_editor.md +5 -6
  139. package/docs/de/intlayer_with_angular.md +8 -8
  140. package/docs/de/intlayer_with_astro.md +244 -0
  141. package/docs/de/intlayer_with_create_react_app.md +4 -4
  142. package/docs/de/intlayer_with_express.md +8 -8
  143. package/docs/de/intlayer_with_lynx+react.md +6 -6
  144. package/docs/de/intlayer_with_nestjs.md +8 -10
  145. package/docs/de/intlayer_with_nextjs_14.md +4 -4
  146. package/docs/de/intlayer_with_nextjs_15.md +9 -8
  147. package/docs/de/intlayer_with_nextjs_page_router.md +8 -8
  148. package/docs/de/intlayer_with_nuxt.md +8 -8
  149. package/docs/de/intlayer_with_react_native+expo.md +17 -26
  150. package/docs/de/intlayer_with_react_router_v7.md +197 -246
  151. package/docs/de/intlayer_with_tanstack.md +198 -272
  152. package/docs/de/intlayer_with_vite+preact.md +15 -15
  153. package/docs/de/intlayer_with_vite+react.md +16 -15
  154. package/docs/de/intlayer_with_vite+solid.md +6 -6
  155. package/docs/de/intlayer_with_vite+svelte.md +6 -6
  156. package/docs/de/intlayer_with_vite+vue.md +17 -17
  157. package/docs/de/introduction.md +4 -4
  158. package/docs/de/locale_mapper.md +4 -6
  159. package/docs/de/mcp_server.md +13 -9
  160. package/docs/de/packages/express-intlayer/t.md +4 -4
  161. package/docs/de/packages/intlayer/getConfiguration.md +4 -4
  162. package/docs/de/packages/intlayer/getEnumeration.md +4 -4
  163. package/docs/de/packages/intlayer/getHTMLTextDir.md +4 -4
  164. package/docs/de/packages/intlayer/getLocaleLang.md +4 -4
  165. package/docs/de/packages/intlayer/getLocaleName.md +4 -4
  166. package/docs/de/packages/intlayer/getLocalizedUrl.md +4 -4
  167. package/docs/de/packages/intlayer/getMultilingualUrls.md +4 -4
  168. package/docs/de/packages/intlayer/getPathWithoutLocale.md +4 -4
  169. package/docs/de/packages/intlayer/getTranslation.md +4 -4
  170. package/docs/de/packages/intlayer/getTranslationContent.md +4 -4
  171. package/docs/de/packages/next-intlayer/t.md +4 -4
  172. package/docs/de/packages/next-intlayer/useDictionary.md +4 -4
  173. package/docs/de/packages/next-intlayer/useIntlayer.md +4 -4
  174. package/docs/de/packages/next-intlayer/useLocale.md +4 -4
  175. package/docs/de/packages/react-intlayer/t.md +4 -4
  176. package/docs/de/packages/react-intlayer/useDictionary.md +4 -4
  177. package/docs/de/packages/react-intlayer/useI18n.md +4 -4
  178. package/docs/de/packages/react-intlayer/useIntlayer.md +4 -4
  179. package/docs/de/packages/react-intlayer/useLocale.md +4 -4
  180. package/docs/de/per_locale_file.md +4 -4
  181. package/docs/de/roadmap.md +7 -5
  182. package/docs/de/testing.md +4 -7
  183. package/docs/de/vs_code_extension.md +13 -9
  184. package/docs/en/CI_CD.md +4 -6
  185. package/docs/en/autoFill.md +75 -28
  186. package/docs/en/configuration.md +214 -56
  187. package/docs/en/dictionary/condition.md +4 -6
  188. package/docs/en/dictionary/content_file.md +25 -17
  189. package/docs/en/dictionary/enumeration.md +4 -6
  190. package/docs/en/dictionary/file.md +16 -8
  191. package/docs/en/dictionary/function_fetching.md +4 -6
  192. package/docs/en/dictionary/gender.md +4 -6
  193. package/docs/en/dictionary/insertion.md +4 -6
  194. package/docs/en/dictionary/markdown.md +4 -6
  195. package/docs/en/dictionary/nesting.md +4 -6
  196. package/docs/en/dictionary/translation.md +4 -6
  197. package/docs/en/formatters.md +23 -50
  198. package/docs/en/how_works_intlayer.md +6 -8
  199. package/docs/en/index.md +5 -7
  200. package/docs/en/interest_of_intlayer.md +7 -7
  201. package/docs/en/intlayer_CMS.md +12 -12
  202. package/docs/en/intlayer_cli.md +97 -14
  203. package/docs/en/intlayer_visual_editor.md +14 -10
  204. package/docs/en/intlayer_with_angular.md +10 -12
  205. package/docs/en/intlayer_with_astro.md +244 -0
  206. package/docs/en/intlayer_with_create_react_app.md +10 -12
  207. package/docs/en/intlayer_with_express.md +9 -11
  208. package/docs/en/intlayer_with_lynx+react.md +7 -9
  209. package/docs/en/intlayer_with_nestjs.md +8 -10
  210. package/docs/en/intlayer_with_next-i18next.md +627 -0
  211. package/docs/en/intlayer_with_next-intl.md +446 -0
  212. package/docs/en/intlayer_with_nextjs_14.md +66 -31
  213. package/docs/en/intlayer_with_nextjs_15.md +81 -35
  214. package/docs/en/intlayer_with_nextjs_16.md +1586 -0
  215. package/docs/en/intlayer_with_nextjs_page_router.md +23 -15
  216. package/docs/en/intlayer_with_nuxt.md +10 -12
  217. package/docs/en/intlayer_with_react_native+expo.md +49 -27
  218. package/docs/en/intlayer_with_react_router_v7.md +169 -216
  219. package/docs/en/intlayer_with_tanstack.md +174 -249
  220. package/docs/en/intlayer_with_vite+preact.md +18 -20
  221. package/docs/en/intlayer_with_vite+react.md +68 -317
  222. package/docs/en/intlayer_with_vite+solid.md +8 -10
  223. package/docs/en/intlayer_with_vite+svelte.md +8 -10
  224. package/docs/en/intlayer_with_vite+vue.md +18 -20
  225. package/docs/en/introduction.md +5 -7
  226. package/docs/en/locale_mapper.md +4 -6
  227. package/docs/en/mcp_server.md +13 -9
  228. package/docs/en/packages/express-intlayer/t.md +4 -6
  229. package/docs/en/packages/intlayer/getConfiguration.md +4 -6
  230. package/docs/en/packages/intlayer/getEnumeration.md +4 -6
  231. package/docs/en/packages/intlayer/getHTMLTextDir.md +4 -6
  232. package/docs/en/packages/intlayer/getLocaleLang.md +4 -6
  233. package/docs/en/packages/intlayer/getLocaleName.md +4 -6
  234. package/docs/en/packages/intlayer/getLocalizedUrl.md +4 -6
  235. package/docs/en/packages/intlayer/getMultilingualUrls.md +4 -6
  236. package/docs/en/packages/intlayer/getPathWithoutLocale.md +4 -6
  237. package/docs/en/packages/intlayer/getTranslation.md +4 -6
  238. package/docs/en/packages/intlayer/getTranslationContent.md +4 -6
  239. package/docs/en/packages/next-intlayer/t.md +4 -6
  240. package/docs/en/packages/next-intlayer/useDictionary.md +5 -7
  241. package/docs/en/packages/next-intlayer/useIntlayer.md +5 -7
  242. package/docs/en/packages/next-intlayer/useLocale.md +41 -8
  243. package/docs/en/packages/react-intlayer/t.md +4 -6
  244. package/docs/en/packages/react-intlayer/useDictionary.md +5 -7
  245. package/docs/en/packages/react-intlayer/useI18n.md +5 -5
  246. package/docs/en/packages/react-intlayer/useIntlayer.md +5 -7
  247. package/docs/en/packages/react-intlayer/useLocale.md +4 -6
  248. package/docs/en/per_locale_file.md +4 -6
  249. package/docs/en/plugins/sync-json.md +244 -0
  250. package/docs/en/releases/v6.md +7 -0
  251. package/docs/en/releases/v7.md +486 -0
  252. package/docs/en/roadmap.md +11 -9
  253. package/docs/en/testing.md +13 -11
  254. package/docs/en/vs_code_extension.md +13 -9
  255. package/docs/en-GB/CI_CD.md +4 -6
  256. package/docs/en-GB/autoFill.md +10 -8
  257. package/docs/en-GB/configuration.md +16 -10
  258. package/docs/en-GB/dictionary/condition.md +4 -4
  259. package/docs/en-GB/dictionary/content_file.md +7 -7
  260. package/docs/en-GB/dictionary/enumeration.md +4 -4
  261. package/docs/en-GB/dictionary/file.md +4 -4
  262. package/docs/en-GB/dictionary/gender.md +4 -6
  263. package/docs/en-GB/dictionary/insertion.md +4 -4
  264. package/docs/en-GB/dictionary/markdown.md +4 -4
  265. package/docs/en-GB/dictionary/nesting.md +4 -4
  266. package/docs/en-GB/dictionary/translation.md +4 -4
  267. package/docs/en-GB/formatters.md +19 -33
  268. package/docs/en-GB/how_works_intlayer.md +5 -5
  269. package/docs/en-GB/index.md +4 -4
  270. package/docs/en-GB/interest_of_intlayer.md +7 -7
  271. package/docs/en-GB/intlayer_CMS.md +15 -13
  272. package/docs/en-GB/intlayer_cli.md +7 -7
  273. package/docs/en-GB/intlayer_visual_editor.md +5 -6
  274. package/docs/en-GB/intlayer_with_angular.md +8 -8
  275. package/docs/en-GB/intlayer_with_astro.md +244 -0
  276. package/docs/en-GB/intlayer_with_create_react_app.md +11 -10
  277. package/docs/en-GB/intlayer_with_express.md +8 -8
  278. package/docs/en-GB/intlayer_with_lynx+react.md +5 -5
  279. package/docs/en-GB/intlayer_with_nestjs.md +7 -9
  280. package/docs/en-GB/intlayer_with_nextjs_14.md +10 -10
  281. package/docs/en-GB/intlayer_with_nextjs_15.md +8 -7
  282. package/docs/en-GB/intlayer_with_nextjs_page_router.md +7 -7
  283. package/docs/en-GB/intlayer_with_nuxt.md +7 -7
  284. package/docs/en-GB/intlayer_with_react_native+expo.md +16 -25
  285. package/docs/en-GB/intlayer_with_react_router_v7.md +175 -224
  286. package/docs/en-GB/intlayer_with_tanstack.md +181 -255
  287. package/docs/en-GB/intlayer_with_vite+preact.md +14 -14
  288. package/docs/en-GB/intlayer_with_vite+react.md +15 -14
  289. package/docs/en-GB/intlayer_with_vite+solid.md +5 -5
  290. package/docs/en-GB/intlayer_with_vite+svelte.md +5 -5
  291. package/docs/en-GB/intlayer_with_vite+vue.md +16 -16
  292. package/docs/en-GB/introduction.md +4 -4
  293. package/docs/en-GB/locale_mapper.md +4 -6
  294. package/docs/en-GB/mcp_server.md +13 -9
  295. package/docs/en-GB/packages/express-intlayer/t.md +4 -4
  296. package/docs/en-GB/packages/intlayer/getConfiguration.md +4 -4
  297. package/docs/en-GB/packages/intlayer/getEnumeration.md +4 -4
  298. package/docs/en-GB/packages/intlayer/getHTMLTextDir.md +4 -4
  299. package/docs/en-GB/packages/intlayer/getLocaleLang.md +4 -4
  300. package/docs/en-GB/packages/intlayer/getLocaleName.md +4 -4
  301. package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +4 -4
  302. package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +4 -4
  303. package/docs/en-GB/packages/intlayer/getPathWithoutLocale.md +4 -4
  304. package/docs/en-GB/packages/intlayer/getTranslation.md +4 -4
  305. package/docs/en-GB/packages/intlayer/getTranslationContent.md +4 -4
  306. package/docs/en-GB/packages/next-intlayer/t.md +4 -4
  307. package/docs/en-GB/packages/next-intlayer/useDictionary.md +4 -4
  308. package/docs/en-GB/packages/next-intlayer/useIntlayer.md +5 -5
  309. package/docs/en-GB/packages/next-intlayer/useLocale.md +4 -4
  310. package/docs/en-GB/packages/react-intlayer/t.md +4 -4
  311. package/docs/en-GB/packages/react-intlayer/useDictionary.md +4 -4
  312. package/docs/en-GB/packages/react-intlayer/useI18n.md +4 -4
  313. package/docs/en-GB/packages/react-intlayer/useIntlayer.md +5 -5
  314. package/docs/en-GB/packages/react-intlayer/useLocale.md +4 -4
  315. package/docs/en-GB/per_locale_file.md +4 -4
  316. package/docs/en-GB/roadmap.md +7 -5
  317. package/docs/en-GB/testing.md +4 -7
  318. package/docs/en-GB/vs_code_extension.md +13 -9
  319. package/docs/es/CI_CD.md +4 -6
  320. package/docs/es/autoFill.md +10 -8
  321. package/docs/es/configuration.md +16 -10
  322. package/docs/es/dictionary/content_file.md +7 -7
  323. package/docs/es/dictionary/enumeration.md +4 -4
  324. package/docs/es/dictionary/file.md +4 -4
  325. package/docs/es/dictionary/function_fetching.md +4 -4
  326. package/docs/es/dictionary/gender.md +4 -6
  327. package/docs/es/dictionary/insertion.md +4 -4
  328. package/docs/es/dictionary/translation.md +4 -4
  329. package/docs/es/formatters.md +25 -57
  330. package/docs/es/how_works_intlayer.md +5 -5
  331. package/docs/es/index.md +4 -4
  332. package/docs/es/interest_of_intlayer.md +7 -7
  333. package/docs/es/intlayer_CMS.md +10 -8
  334. package/docs/es/intlayer_cli.md +7 -7
  335. package/docs/es/intlayer_visual_editor.md +5 -7
  336. package/docs/es/intlayer_with_angular.md +8 -8
  337. package/docs/es/intlayer_with_astro.md +244 -0
  338. package/docs/es/intlayer_with_create_react_app.md +9 -8
  339. package/docs/es/intlayer_with_express.md +8 -8
  340. package/docs/es/intlayer_with_lynx+react.md +6 -6
  341. package/docs/es/intlayer_with_nestjs.md +6 -8
  342. package/docs/es/intlayer_with_nextjs_14.md +8 -8
  343. package/docs/es/intlayer_with_nextjs_15.md +9 -8
  344. package/docs/es/intlayer_with_nextjs_page_router.md +6 -6
  345. package/docs/es/intlayer_with_nuxt.md +6 -6
  346. package/docs/es/intlayer_with_react_native+expo.md +17 -26
  347. package/docs/es/intlayer_with_react_router_v7.md +191 -235
  348. package/docs/es/intlayer_with_tanstack.md +208 -280
  349. package/docs/es/intlayer_with_vite+preact.md +13 -13
  350. package/docs/es/intlayer_with_vite+react.md +14 -13
  351. package/docs/es/intlayer_with_vite+solid.md +6 -6
  352. package/docs/es/intlayer_with_vite+svelte.md +6 -6
  353. package/docs/es/intlayer_with_vite+vue.md +15 -15
  354. package/docs/es/introduction.md +4 -4
  355. package/docs/es/locale_mapper.md +4 -6
  356. package/docs/es/mcp_server.md +13 -9
  357. package/docs/es/packages/express-intlayer/t.md +4 -4
  358. package/docs/es/packages/intlayer/getConfiguration.md +4 -4
  359. package/docs/es/packages/intlayer/getEnumeration.md +4 -4
  360. package/docs/es/packages/intlayer/getHTMLTextDir.md +4 -4
  361. package/docs/es/packages/intlayer/getLocaleLang.md +4 -4
  362. package/docs/es/packages/intlayer/getLocaleName.md +4 -4
  363. package/docs/es/packages/intlayer/getLocalizedUrl.md +4 -4
  364. package/docs/es/packages/intlayer/getMultilingualUrls.md +4 -4
  365. package/docs/es/packages/intlayer/getPathWithoutLocale.md +4 -4
  366. package/docs/es/packages/intlayer/getTranslation.md +4 -4
  367. package/docs/es/packages/intlayer/getTranslationContent.md +4 -4
  368. package/docs/es/packages/next-intlayer/index.md +4 -4
  369. package/docs/es/packages/next-intlayer/t.md +4 -4
  370. package/docs/es/packages/next-intlayer/useDictionary.md +4 -4
  371. package/docs/es/packages/next-intlayer/useIntlayer.md +4 -4
  372. package/docs/es/packages/next-intlayer/useLocale.md +4 -4
  373. package/docs/es/packages/react-intlayer/index.md +4 -4
  374. package/docs/es/packages/react-intlayer/t.md +4 -4
  375. package/docs/es/packages/react-intlayer/useDictionary.md +4 -4
  376. package/docs/es/packages/react-intlayer/useI18n.md +4 -4
  377. package/docs/es/packages/react-intlayer/useIntlayer.md +4 -4
  378. package/docs/es/packages/react-intlayer/useLocale.md +4 -4
  379. package/docs/es/per_locale_file.md +4 -4
  380. package/docs/es/roadmap.md +7 -5
  381. package/docs/es/testing.md +4 -7
  382. package/docs/es/vs_code_extension.md +13 -9
  383. package/docs/fr/CI_CD.md +4 -4
  384. package/docs/fr/autoFill.md +10 -8
  385. package/docs/fr/configuration.md +19 -22
  386. package/docs/fr/dictionary/content_file.md +7 -7
  387. package/docs/fr/dictionary/enumeration.md +4 -4
  388. package/docs/fr/dictionary/file.md +4 -4
  389. package/docs/fr/dictionary/function_fetching.md +4 -4
  390. package/docs/fr/dictionary/gender.md +4 -6
  391. package/docs/fr/dictionary/insertion.md +4 -4
  392. package/docs/fr/dictionary/translation.md +4 -4
  393. package/docs/fr/formatters.md +25 -57
  394. package/docs/fr/how_works_intlayer.md +5 -5
  395. package/docs/fr/index.md +4 -4
  396. package/docs/fr/interest_of_intlayer.md +7 -7
  397. package/docs/fr/intlayer_CMS.md +10 -8
  398. package/docs/fr/intlayer_cli.md +7 -7
  399. package/docs/fr/intlayer_visual_editor.md +5 -6
  400. package/docs/fr/intlayer_with_angular.md +8 -8
  401. package/docs/fr/intlayer_with_astro.md +244 -0
  402. package/docs/fr/intlayer_with_create_react_app.md +9 -8
  403. package/docs/fr/intlayer_with_express.md +8 -8
  404. package/docs/fr/intlayer_with_lynx+react.md +6 -6
  405. package/docs/fr/intlayer_with_nestjs.md +8 -10
  406. package/docs/fr/intlayer_with_nextjs_14.md +4 -4
  407. package/docs/fr/intlayer_with_nextjs_15.md +7 -6
  408. package/docs/fr/intlayer_with_nextjs_page_router.md +6 -6
  409. package/docs/fr/intlayer_with_nuxt.md +6 -6
  410. package/docs/fr/intlayer_with_react_native+expo.md +17 -26
  411. package/docs/fr/intlayer_with_react_router_v7.md +192 -252
  412. package/docs/fr/intlayer_with_tanstack.md +197 -272
  413. package/docs/fr/intlayer_with_vite+preact.md +13 -13
  414. package/docs/fr/intlayer_with_vite+react.md +13 -13
  415. package/docs/fr/intlayer_with_vite+solid.md +6 -6
  416. package/docs/fr/intlayer_with_vite+svelte.md +6 -6
  417. package/docs/fr/intlayer_with_vite+vue.md +15 -15
  418. package/docs/fr/introduction.md +4 -4
  419. package/docs/fr/locale_mapper.md +4 -6
  420. package/docs/fr/mcp_server.md +13 -9
  421. package/docs/fr/packages/express-intlayer/t.md +4 -4
  422. package/docs/fr/packages/intlayer/getConfiguration.md +4 -4
  423. package/docs/fr/packages/intlayer/getEnumeration.md +4 -4
  424. package/docs/fr/packages/intlayer/getHTMLTextDir.md +4 -4
  425. package/docs/fr/packages/intlayer/getLocaleLang.md +4 -4
  426. package/docs/fr/packages/intlayer/getLocaleName.md +4 -4
  427. package/docs/fr/packages/intlayer/getLocalizedUrl.md +4 -4
  428. package/docs/fr/packages/intlayer/getMultilingualUrls.md +4 -4
  429. package/docs/fr/packages/intlayer/getPathWithoutLocale.md +4 -4
  430. package/docs/fr/packages/intlayer/getTranslation.md +4 -4
  431. package/docs/fr/packages/intlayer/getTranslationContent.md +4 -4
  432. package/docs/fr/packages/next-intlayer/t.md +4 -4
  433. package/docs/fr/packages/next-intlayer/useDictionary.md +4 -4
  434. package/docs/fr/packages/next-intlayer/useIntlayer.md +4 -4
  435. package/docs/fr/packages/next-intlayer/useLocale.md +4 -4
  436. package/docs/fr/packages/react-intlayer/index.md +4 -4
  437. package/docs/fr/packages/react-intlayer/t.md +4 -4
  438. package/docs/fr/packages/react-intlayer/useDictionary.md +4 -4
  439. package/docs/fr/packages/react-intlayer/useI18n.md +4 -4
  440. package/docs/fr/packages/react-intlayer/useIntlayer.md +4 -4
  441. package/docs/fr/packages/react-intlayer/useLocale.md +4 -4
  442. package/docs/fr/per_locale_file.md +4 -4
  443. package/docs/fr/roadmap.md +7 -5
  444. package/docs/fr/testing.md +4 -7
  445. package/docs/fr/vs_code_extension.md +13 -9
  446. package/docs/hi/CI_CD.md +4 -6
  447. package/docs/hi/autoFill.md +10 -8
  448. package/docs/hi/configuration.md +16 -10
  449. package/docs/hi/dictionary/content_file.md +7 -7
  450. package/docs/hi/dictionary/enumeration.md +4 -4
  451. package/docs/hi/dictionary/file.md +4 -4
  452. package/docs/hi/dictionary/function_fetching.md +4 -4
  453. package/docs/hi/dictionary/gender.md +4 -6
  454. package/docs/hi/dictionary/insertion.md +4 -4
  455. package/docs/hi/dictionary/translation.md +4 -4
  456. package/docs/hi/formatters.md +19 -33
  457. package/docs/hi/how_works_intlayer.md +5 -5
  458. package/docs/hi/index.md +4 -4
  459. package/docs/hi/interest_of_intlayer.md +7 -7
  460. package/docs/hi/intlayer_CMS.md +10 -8
  461. package/docs/hi/intlayer_cli.md +8 -11
  462. package/docs/hi/intlayer_visual_editor.md +5 -6
  463. package/docs/hi/intlayer_with_angular.md +8 -8
  464. package/docs/hi/intlayer_with_astro.md +244 -0
  465. package/docs/hi/intlayer_with_create_react_app.md +4 -4
  466. package/docs/hi/intlayer_with_express.md +8 -8
  467. package/docs/hi/intlayer_with_lynx+react.md +6 -6
  468. package/docs/hi/intlayer_with_nestjs.md +8 -10
  469. package/docs/hi/intlayer_with_nextjs_14.md +4 -4
  470. package/docs/hi/intlayer_with_nextjs_15.md +9 -8
  471. package/docs/hi/intlayer_with_nextjs_page_router.md +8 -8
  472. package/docs/hi/intlayer_with_nuxt.md +8 -8
  473. package/docs/hi/intlayer_with_react_native+expo.md +17 -26
  474. package/docs/hi/intlayer_with_react_router_v7.md +204 -248
  475. package/docs/hi/intlayer_with_tanstack.md +215 -290
  476. package/docs/hi/intlayer_with_vite+preact.md +15 -15
  477. package/docs/hi/intlayer_with_vite+react.md +16 -15
  478. package/docs/hi/intlayer_with_vite+solid.md +7 -7
  479. package/docs/hi/intlayer_with_vite+svelte.md +6 -6
  480. package/docs/hi/intlayer_with_vite+vue.md +17 -17
  481. package/docs/hi/introduction.md +4 -4
  482. package/docs/hi/locale_mapper.md +4 -6
  483. package/docs/hi/mcp_server.md +13 -9
  484. package/docs/hi/packages/express-intlayer/t.md +4 -4
  485. package/docs/hi/packages/intlayer/getConfiguration.md +4 -4
  486. package/docs/hi/packages/intlayer/getEnumeration.md +4 -4
  487. package/docs/hi/packages/intlayer/getHTMLTextDir.md +4 -4
  488. package/docs/hi/packages/intlayer/getLocaleLang.md +4 -4
  489. package/docs/hi/packages/intlayer/getLocaleName.md +4 -4
  490. package/docs/hi/packages/intlayer/getLocalizedUrl.md +4 -4
  491. package/docs/hi/packages/intlayer/getMultilingualUrls.md +4 -4
  492. package/docs/hi/packages/intlayer/getPathWithoutLocale.md +4 -4
  493. package/docs/hi/packages/intlayer/getTranslation.md +4 -4
  494. package/docs/hi/packages/intlayer/getTranslationContent.md +4 -4
  495. package/docs/hi/packages/intlayer/index.md +4 -4
  496. package/docs/hi/packages/next-intlayer/t.md +4 -4
  497. package/docs/hi/packages/next-intlayer/useDictionary.md +4 -4
  498. package/docs/hi/packages/next-intlayer/useIntlayer.md +4 -4
  499. package/docs/hi/packages/next-intlayer/useLocale.md +4 -4
  500. package/docs/hi/packages/react-intlayer/t.md +4 -4
  501. package/docs/hi/packages/react-intlayer/useDictionary.md +4 -4
  502. package/docs/hi/packages/react-intlayer/useIntlayer.md +4 -4
  503. package/docs/hi/packages/react-intlayer/useLocale.md +4 -4
  504. package/docs/hi/per_locale_file.md +4 -4
  505. package/docs/hi/roadmap.md +7 -5
  506. package/docs/hi/testing.md +4 -7
  507. package/docs/hi/vs_code_extension.md +13 -9
  508. package/docs/it/CI_CD.md +4 -6
  509. package/docs/it/autoFill.md +10 -8
  510. package/docs/it/configuration.md +16 -10
  511. package/docs/it/dictionary/content_file.md +7 -7
  512. package/docs/it/dictionary/enumeration.md +4 -4
  513. package/docs/it/dictionary/file.md +4 -4
  514. package/docs/it/dictionary/function_fetching.md +4 -4
  515. package/docs/it/dictionary/gender.md +4 -6
  516. package/docs/it/dictionary/insertion.md +4 -4
  517. package/docs/it/dictionary/translation.md +4 -4
  518. package/docs/it/formatters.md +19 -55
  519. package/docs/it/how_works_intlayer.md +5 -5
  520. package/docs/it/index.md +4 -4
  521. package/docs/it/interest_of_intlayer.md +7 -7
  522. package/docs/it/intlayer_CMS.md +10 -8
  523. package/docs/it/intlayer_cli.md +7 -7
  524. package/docs/it/intlayer_visual_editor.md +5 -6
  525. package/docs/it/intlayer_with_angular.md +8 -8
  526. package/docs/it/intlayer_with_astro.md +244 -0
  527. package/docs/it/intlayer_with_create_react_app.md +9 -8
  528. package/docs/it/intlayer_with_express.md +8 -8
  529. package/docs/it/intlayer_with_lynx+react.md +6 -6
  530. package/docs/it/intlayer_with_nestjs.md +8 -10
  531. package/docs/it/intlayer_with_nextjs_14.md +4 -4
  532. package/docs/it/intlayer_with_nextjs_15.md +9 -8
  533. package/docs/it/intlayer_with_nextjs_page_router.md +8 -8
  534. package/docs/it/intlayer_with_nuxt.md +8 -8
  535. package/docs/it/intlayer_with_react_native+expo.md +17 -27
  536. package/docs/it/intlayer_with_react_router_v7.md +198 -245
  537. package/docs/it/intlayer_with_tanstack.md +207 -271
  538. package/docs/it/intlayer_with_vite+preact.md +15 -15
  539. package/docs/it/intlayer_with_vite+react.md +20 -17
  540. package/docs/it/intlayer_with_vite+solid.md +6 -6
  541. package/docs/it/intlayer_with_vite+svelte.md +6 -6
  542. package/docs/it/intlayer_with_vite+vue.md +17 -17
  543. package/docs/it/introduction.md +4 -4
  544. package/docs/it/locale_mapper.md +4 -6
  545. package/docs/it/mcp_server.md +13 -9
  546. package/docs/it/packages/express-intlayer/t.md +4 -4
  547. package/docs/it/packages/intlayer/getConfiguration.md +4 -4
  548. package/docs/it/packages/intlayer/getEnumeration.md +4 -4
  549. package/docs/it/packages/intlayer/getHTMLTextDir.md +4 -4
  550. package/docs/it/packages/intlayer/getLocaleLang.md +4 -4
  551. package/docs/it/packages/intlayer/getLocaleName.md +4 -4
  552. package/docs/it/packages/intlayer/getLocalizedUrl.md +4 -4
  553. package/docs/it/packages/intlayer/getMultilingualUrls.md +4 -4
  554. package/docs/it/packages/intlayer/getPathWithoutLocale.md +4 -4
  555. package/docs/it/packages/intlayer/getTranslation.md +4 -4
  556. package/docs/it/packages/intlayer/getTranslationContent.md +4 -4
  557. package/docs/it/packages/next-intlayer/t.md +4 -4
  558. package/docs/it/packages/next-intlayer/useDictionary.md +4 -4
  559. package/docs/it/packages/next-intlayer/useIntlayer.md +4 -4
  560. package/docs/it/packages/next-intlayer/useLocale.md +4 -4
  561. package/docs/it/packages/react-intlayer/t.md +4 -4
  562. package/docs/it/packages/react-intlayer/useDictionary.md +4 -4
  563. package/docs/it/packages/react-intlayer/useI18n.md +4 -4
  564. package/docs/it/packages/react-intlayer/useIntlayer.md +4 -4
  565. package/docs/it/packages/react-intlayer/useLocale.md +4 -4
  566. package/docs/it/per_locale_file.md +4 -4
  567. package/docs/it/roadmap.md +7 -5
  568. package/docs/it/testing.md +4 -7
  569. package/docs/it/vs_code_extension.md +13 -9
  570. package/docs/ja/CI_CD.md +4 -6
  571. package/docs/ja/autoFill.md +10 -8
  572. package/docs/ja/configuration.md +19 -22
  573. package/docs/ja/dictionary/content_file.md +7 -7
  574. package/docs/ja/dictionary/enumeration.md +4 -4
  575. package/docs/ja/dictionary/file.md +5 -5
  576. package/docs/ja/dictionary/function_fetching.md +4 -4
  577. package/docs/ja/dictionary/gender.md +4 -6
  578. package/docs/ja/dictionary/insertion.md +4 -4
  579. package/docs/ja/dictionary/translation.md +4 -4
  580. package/docs/ja/formatters.md +25 -57
  581. package/docs/ja/how_works_intlayer.md +5 -5
  582. package/docs/ja/index.md +4 -4
  583. package/docs/ja/interest_of_intlayer.md +7 -7
  584. package/docs/ja/intlayer_CMS.md +10 -9
  585. package/docs/ja/intlayer_cli.md +7 -7
  586. package/docs/ja/intlayer_visual_editor.md +5 -6
  587. package/docs/ja/intlayer_with_angular.md +8 -8
  588. package/docs/ja/intlayer_with_astro.md +244 -0
  589. package/docs/ja/intlayer_with_create_react_app.md +9 -8
  590. package/docs/ja/intlayer_with_express.md +8 -8
  591. package/docs/ja/intlayer_with_lynx+react.md +6 -6
  592. package/docs/ja/intlayer_with_nestjs.md +8 -10
  593. package/docs/ja/intlayer_with_nextjs_14.md +8 -8
  594. package/docs/ja/intlayer_with_nextjs_15.md +9 -8
  595. package/docs/ja/intlayer_with_nextjs_page_router.md +8 -8
  596. package/docs/ja/intlayer_with_nuxt.md +8 -8
  597. package/docs/ja/intlayer_with_react_native+expo.md +24 -35
  598. package/docs/ja/intlayer_with_react_router_v7.md +207 -253
  599. package/docs/ja/intlayer_with_tanstack.md +220 -290
  600. package/docs/ja/intlayer_with_vite+preact.md +15 -15
  601. package/docs/ja/intlayer_with_vite+react.md +18 -17
  602. package/docs/ja/intlayer_with_vite+solid.md +6 -6
  603. package/docs/ja/intlayer_with_vite+svelte.md +6 -6
  604. package/docs/ja/intlayer_with_vite+vue.md +17 -17
  605. package/docs/ja/introduction.md +4 -4
  606. package/docs/ja/locale_mapper.md +4 -6
  607. package/docs/ja/mcp_server.md +13 -9
  608. package/docs/ja/packages/express-intlayer/t.md +4 -4
  609. package/docs/ja/packages/intlayer/getConfiguration.md +4 -4
  610. package/docs/ja/packages/intlayer/getEnumeration.md +4 -4
  611. package/docs/ja/packages/intlayer/getHTMLTextDir.md +4 -4
  612. package/docs/ja/packages/intlayer/getLocaleLang.md +4 -4
  613. package/docs/ja/packages/intlayer/getLocaleName.md +4 -4
  614. package/docs/ja/packages/intlayer/getLocalizedUrl.md +4 -4
  615. package/docs/ja/packages/intlayer/getMultilingualUrls.md +4 -4
  616. package/docs/ja/packages/intlayer/getPathWithoutLocale.md +4 -4
  617. package/docs/ja/packages/intlayer/getTranslation.md +4 -4
  618. package/docs/ja/packages/intlayer/getTranslationContent.md +4 -4
  619. package/docs/ja/packages/next-intlayer/t.md +4 -4
  620. package/docs/ja/packages/next-intlayer/useDictionary.md +4 -4
  621. package/docs/ja/packages/next-intlayer/useIntlayer.md +4 -4
  622. package/docs/ja/packages/next-intlayer/useLocale.md +4 -4
  623. package/docs/ja/packages/react-intlayer/t.md +4 -4
  624. package/docs/ja/packages/react-intlayer/useDictionary.md +4 -4
  625. package/docs/ja/packages/react-intlayer/useI18n.md +4 -4
  626. package/docs/ja/packages/react-intlayer/useIntlayer.md +4 -4
  627. package/docs/ja/packages/react-intlayer/useLocale.md +4 -4
  628. package/docs/ja/per_locale_file.md +4 -4
  629. package/docs/ja/roadmap.md +7 -5
  630. package/docs/ja/testing.md +4 -7
  631. package/docs/ja/vs_code_extension.md +13 -9
  632. package/docs/ko/CI_CD.md +4 -6
  633. package/docs/ko/autoFill.md +10 -8
  634. package/docs/ko/configuration.md +19 -22
  635. package/docs/ko/dictionary/content_file.md +7 -7
  636. package/docs/ko/dictionary/enumeration.md +4 -4
  637. package/docs/ko/dictionary/file.md +4 -4
  638. package/docs/ko/dictionary/function_fetching.md +4 -4
  639. package/docs/ko/dictionary/gender.md +4 -6
  640. package/docs/ko/dictionary/insertion.md +4 -4
  641. package/docs/ko/dictionary/translation.md +4 -4
  642. package/docs/ko/formatters.md +19 -33
  643. package/docs/ko/how_works_intlayer.md +5 -5
  644. package/docs/ko/index.md +4 -4
  645. package/docs/ko/interest_of_intlayer.md +7 -7
  646. package/docs/ko/intlayer_CMS.md +10 -8
  647. package/docs/ko/intlayer_cli.md +7 -7
  648. package/docs/ko/intlayer_visual_editor.md +5 -6
  649. package/docs/ko/intlayer_with_angular.md +8 -8
  650. package/docs/ko/intlayer_with_astro.md +244 -0
  651. package/docs/ko/intlayer_with_create_react_app.md +9 -8
  652. package/docs/ko/intlayer_with_express.md +8 -8
  653. package/docs/ko/intlayer_with_lynx+react.md +6 -10
  654. package/docs/ko/intlayer_with_nestjs.md +8 -10
  655. package/docs/ko/intlayer_with_nextjs_14.md +8 -8
  656. package/docs/ko/intlayer_with_nextjs_15.md +9 -8
  657. package/docs/ko/intlayer_with_nextjs_page_router.md +8 -8
  658. package/docs/ko/intlayer_with_nuxt.md +8 -8
  659. package/docs/ko/intlayer_with_react_native+expo.md +25 -34
  660. package/docs/ko/intlayer_with_react_router_v7.md +195 -249
  661. package/docs/ko/intlayer_with_tanstack.md +202 -274
  662. package/docs/ko/intlayer_with_vite+preact.md +15 -15
  663. package/docs/ko/intlayer_with_vite+react.md +17 -16
  664. package/docs/ko/intlayer_with_vite+solid.md +6 -6
  665. package/docs/ko/intlayer_with_vite+svelte.md +6 -6
  666. package/docs/ko/intlayer_with_vite+vue.md +17 -17
  667. package/docs/ko/introduction.md +4 -4
  668. package/docs/ko/locale_mapper.md +4 -6
  669. package/docs/ko/mcp_server.md +13 -9
  670. package/docs/ko/packages/express-intlayer/t.md +4 -4
  671. package/docs/ko/packages/intlayer/getConfiguration.md +4 -4
  672. package/docs/ko/packages/intlayer/getEnumeration.md +4 -4
  673. package/docs/ko/packages/intlayer/getHTMLTextDir.md +4 -4
  674. package/docs/ko/packages/intlayer/getLocaleLang.md +4 -4
  675. package/docs/ko/packages/intlayer/getLocaleName.md +4 -4
  676. package/docs/ko/packages/intlayer/getLocalizedUrl.md +7 -16
  677. package/docs/ko/packages/intlayer/getMultilingualUrls.md +4 -4
  678. package/docs/ko/packages/intlayer/getPathWithoutLocale.md +4 -4
  679. package/docs/ko/packages/intlayer/getTranslation.md +4 -4
  680. package/docs/ko/packages/intlayer/getTranslationContent.md +4 -4
  681. package/docs/ko/packages/next-intlayer/t.md +4 -4
  682. package/docs/ko/packages/next-intlayer/useDictionary.md +4 -4
  683. package/docs/ko/packages/next-intlayer/useIntlayer.md +4 -4
  684. package/docs/ko/packages/next-intlayer/useLocale.md +4 -4
  685. package/docs/ko/packages/react-intlayer/t.md +4 -4
  686. package/docs/ko/packages/react-intlayer/useDictionary.md +4 -4
  687. package/docs/ko/packages/react-intlayer/useI18n.md +4 -4
  688. package/docs/ko/packages/react-intlayer/useIntlayer.md +4 -4
  689. package/docs/ko/packages/react-intlayer/useLocale.md +4 -4
  690. package/docs/ko/per_locale_file.md +4 -4
  691. package/docs/ko/roadmap.md +7 -5
  692. package/docs/ko/testing.md +4 -7
  693. package/docs/ko/vs_code_extension.md +13 -9
  694. package/docs/pt/CI_CD.md +4 -6
  695. package/docs/pt/autoFill.md +10 -8
  696. package/docs/pt/configuration.md +16 -22
  697. package/docs/pt/dictionary/content_file.md +7 -7
  698. package/docs/pt/dictionary/enumeration.md +4 -4
  699. package/docs/pt/dictionary/file.md +4 -4
  700. package/docs/pt/dictionary/function_fetching.md +4 -4
  701. package/docs/pt/dictionary/gender.md +4 -6
  702. package/docs/pt/dictionary/insertion.md +4 -4
  703. package/docs/pt/dictionary/translation.md +4 -4
  704. package/docs/pt/formatters.md +19 -33
  705. package/docs/pt/how_works_intlayer.md +5 -5
  706. package/docs/pt/index.md +4 -4
  707. package/docs/pt/interest_of_intlayer.md +7 -7
  708. package/docs/pt/intlayer_CMS.md +10 -8
  709. package/docs/pt/intlayer_cli.md +7 -7
  710. package/docs/pt/intlayer_visual_editor.md +5 -6
  711. package/docs/pt/intlayer_with_angular.md +8 -8
  712. package/docs/pt/intlayer_with_astro.md +244 -0
  713. package/docs/pt/intlayer_with_create_react_app.md +9 -8
  714. package/docs/pt/intlayer_with_express.md +8 -8
  715. package/docs/pt/intlayer_with_lynx+react.md +6 -6
  716. package/docs/pt/intlayer_with_nestjs.md +8 -10
  717. package/docs/pt/intlayer_with_nextjs_14.md +4 -4
  718. package/docs/pt/intlayer_with_nextjs_15.md +9 -8
  719. package/docs/pt/intlayer_with_nextjs_page_router.md +8 -8
  720. package/docs/pt/intlayer_with_nuxt.md +8 -8
  721. package/docs/pt/intlayer_with_react_native+expo.md +17 -26
  722. package/docs/pt/intlayer_with_react_router_v7.md +10 -18
  723. package/docs/pt/intlayer_with_tanstack.md +189 -266
  724. package/docs/pt/intlayer_with_vite+preact.md +15 -15
  725. package/docs/pt/intlayer_with_vite+react.md +16 -15
  726. package/docs/pt/intlayer_with_vite+solid.md +6 -6
  727. package/docs/pt/intlayer_with_vite+svelte.md +6 -6
  728. package/docs/pt/intlayer_with_vite+vue.md +15 -15
  729. package/docs/pt/introduction.md +4 -5
  730. package/docs/pt/locale_mapper.md +4 -6
  731. package/docs/pt/mcp_server.md +13 -9
  732. package/docs/pt/packages/express-intlayer/t.md +4 -4
  733. package/docs/pt/packages/intlayer/getConfiguration.md +4 -4
  734. package/docs/pt/packages/intlayer/getEnumeration.md +4 -4
  735. package/docs/pt/packages/intlayer/getHTMLTextDir.md +4 -4
  736. package/docs/pt/packages/intlayer/getLocaleLang.md +4 -4
  737. package/docs/pt/packages/intlayer/getLocaleName.md +4 -4
  738. package/docs/pt/packages/intlayer/getLocalizedUrl.md +4 -4
  739. package/docs/pt/packages/intlayer/getMultilingualUrls.md +4 -4
  740. package/docs/pt/packages/intlayer/getPathWithoutLocale.md +4 -4
  741. package/docs/pt/packages/intlayer/getTranslation.md +4 -4
  742. package/docs/pt/packages/intlayer/getTranslationContent.md +4 -4
  743. package/docs/pt/packages/next-intlayer/t.md +4 -4
  744. package/docs/pt/packages/next-intlayer/useDictionary.md +4 -4
  745. package/docs/pt/packages/next-intlayer/useIntlayer.md +4 -4
  746. package/docs/pt/packages/next-intlayer/useLocale.md +4 -4
  747. package/docs/pt/packages/react-intlayer/t.md +4 -4
  748. package/docs/pt/packages/react-intlayer/useDictionary.md +4 -4
  749. package/docs/pt/packages/react-intlayer/useI18n.md +4 -4
  750. package/docs/pt/packages/react-intlayer/useIntlayer.md +4 -4
  751. package/docs/pt/packages/react-intlayer/useLocale.md +4 -4
  752. package/docs/pt/per_locale_file.md +4 -4
  753. package/docs/pt/roadmap.md +7 -5
  754. package/docs/pt/testing.md +4 -7
  755. package/docs/pt/vs_code_extension.md +13 -9
  756. package/docs/ru/CI_CD.md +4 -6
  757. package/docs/ru/autoFill.md +10 -8
  758. package/docs/ru/configuration.md +16 -10
  759. package/docs/ru/dictionary/content_file.md +7 -7
  760. package/docs/ru/dictionary/enumeration.md +4 -4
  761. package/docs/ru/dictionary/file.md +4 -4
  762. package/docs/ru/dictionary/function_fetching.md +4 -4
  763. package/docs/ru/dictionary/gender.md +4 -6
  764. package/docs/ru/dictionary/insertion.md +4 -4
  765. package/docs/ru/dictionary/translation.md +4 -4
  766. package/docs/ru/formatters.md +20 -77
  767. package/docs/ru/how_works_intlayer.md +5 -5
  768. package/docs/ru/index.md +4 -4
  769. package/docs/ru/interest_of_intlayer.md +7 -7
  770. package/docs/ru/intlayer_CMS.md +10 -8
  771. package/docs/ru/intlayer_cli.md +7 -7
  772. package/docs/ru/intlayer_visual_editor.md +5 -5
  773. package/docs/ru/intlayer_with_angular.md +8 -8
  774. package/docs/ru/intlayer_with_astro.md +244 -0
  775. package/docs/ru/intlayer_with_create_react_app.md +9 -8
  776. package/docs/ru/intlayer_with_express.md +8 -8
  777. package/docs/ru/intlayer_with_lynx+react.md +6 -6
  778. package/docs/ru/intlayer_with_nestjs.md +8 -10
  779. package/docs/ru/intlayer_with_nextjs_14.md +4 -4
  780. package/docs/ru/intlayer_with_nextjs_15.md +9 -8
  781. package/docs/ru/intlayer_with_nextjs_page_router.md +8 -8
  782. package/docs/ru/intlayer_with_nuxt.md +8 -8
  783. package/docs/ru/intlayer_with_react_native+expo.md +17 -26
  784. package/docs/ru/intlayer_with_react_router_v7.md +197 -243
  785. package/docs/ru/intlayer_with_tanstack.md +203 -277
  786. package/docs/ru/intlayer_with_vite+preact.md +15 -15
  787. package/docs/ru/intlayer_with_vite+react.md +16 -15
  788. package/docs/ru/intlayer_with_vite+solid.md +6 -6
  789. package/docs/ru/intlayer_with_vite+svelte.md +6 -6
  790. package/docs/ru/intlayer_with_vite+vue.md +17 -17
  791. package/docs/ru/introduction.md +4 -4
  792. package/docs/ru/locale_mapper.md +4 -6
  793. package/docs/ru/mcp_server.md +13 -9
  794. package/docs/ru/packages/express-intlayer/t.md +4 -4
  795. package/docs/ru/packages/intlayer/getConfiguration.md +4 -4
  796. package/docs/ru/packages/intlayer/getEnumeration.md +4 -4
  797. package/docs/ru/packages/intlayer/getHTMLTextDir.md +4 -4
  798. package/docs/ru/packages/intlayer/getLocaleLang.md +4 -4
  799. package/docs/ru/packages/intlayer/getLocaleName.md +4 -4
  800. package/docs/ru/packages/intlayer/getLocalizedUrl.md +4 -4
  801. package/docs/ru/packages/intlayer/getMultilingualUrls.md +4 -4
  802. package/docs/ru/packages/intlayer/getPathWithoutLocale.md +4 -4
  803. package/docs/ru/packages/intlayer/getTranslation.md +4 -4
  804. package/docs/ru/packages/intlayer/getTranslationContent.md +4 -4
  805. package/docs/ru/packages/next-intlayer/t.md +4 -4
  806. package/docs/ru/packages/next-intlayer/useDictionary.md +4 -4
  807. package/docs/ru/packages/next-intlayer/useIntlayer.md +4 -4
  808. package/docs/ru/packages/next-intlayer/useLocale.md +4 -4
  809. package/docs/ru/packages/react-intlayer/t.md +4 -4
  810. package/docs/ru/packages/react-intlayer/useDictionary.md +4 -4
  811. package/docs/ru/packages/react-intlayer/useI18n.md +4 -4
  812. package/docs/ru/packages/react-intlayer/useIntlayer.md +4 -4
  813. package/docs/ru/packages/react-intlayer/useLocale.md +4 -4
  814. package/docs/ru/per_locale_file.md +4 -4
  815. package/docs/ru/roadmap.md +7 -5
  816. package/docs/ru/testing.md +4 -7
  817. package/docs/ru/vs_code_extension.md +13 -9
  818. package/docs/tr/CI_CD.md +4 -6
  819. package/docs/tr/autoFill.md +10 -8
  820. package/docs/tr/configuration.md +19 -22
  821. package/docs/tr/dictionary/condition.md +4 -10
  822. package/docs/tr/dictionary/content_file.md +7 -7
  823. package/docs/tr/dictionary/enumeration.md +4 -10
  824. package/docs/tr/dictionary/file.md +4 -10
  825. package/docs/tr/dictionary/function_fetching.md +4 -10
  826. package/docs/tr/dictionary/gender.md +4 -10
  827. package/docs/tr/dictionary/insertion.md +4 -10
  828. package/docs/tr/dictionary/markdown.md +4 -10
  829. package/docs/tr/dictionary/nesting.md +4 -10
  830. package/docs/tr/dictionary/translation.md +4 -10
  831. package/docs/tr/formatters.md +19 -33
  832. package/docs/tr/how_works_intlayer.md +6 -8
  833. package/docs/tr/index.md +5 -7
  834. package/docs/tr/interest_of_intlayer.md +7 -7
  835. package/docs/tr/intlayer_CMS.md +10 -8
  836. package/docs/tr/intlayer_cli.md +8 -8
  837. package/docs/tr/intlayer_visual_editor.md +5 -7
  838. package/docs/tr/intlayer_with_angular.md +10 -12
  839. package/docs/tr/intlayer_with_astro.md +244 -0
  840. package/docs/tr/intlayer_with_create_react_app.md +10 -12
  841. package/docs/tr/intlayer_with_express.md +9 -11
  842. package/docs/tr/intlayer_with_lynx+react.md +7 -9
  843. package/docs/tr/intlayer_with_nestjs.md +8 -10
  844. package/docs/tr/intlayer_with_nextjs_14.md +11 -11
  845. package/docs/tr/intlayer_with_nextjs_15.md +14 -13
  846. package/docs/tr/intlayer_with_nextjs_page_router.md +14 -14
  847. package/docs/tr/intlayer_with_nuxt.md +10 -12
  848. package/docs/tr/intlayer_with_react_native+expo.md +18 -29
  849. package/docs/tr/intlayer_with_react_router_v7.md +225 -270
  850. package/docs/tr/intlayer_with_tanstack.md +401 -304
  851. package/docs/tr/intlayer_with_vite+preact.md +18 -24
  852. package/docs/tr/intlayer_with_vite+react.md +18 -24
  853. package/docs/tr/intlayer_with_vite+solid.md +8 -14
  854. package/docs/tr/intlayer_with_vite+svelte.md +8 -14
  855. package/docs/tr/intlayer_with_vite+vue.md +18 -24
  856. package/docs/tr/introduction.md +5 -7
  857. package/docs/tr/locale_mapper.md +4 -6
  858. package/docs/tr/mcp_server.md +13 -9
  859. package/docs/tr/packages/express-intlayer/t.md +4 -6
  860. package/docs/tr/packages/intlayer/getConfiguration.md +4 -10
  861. package/docs/tr/packages/intlayer/getEnumeration.md +4 -10
  862. package/docs/tr/packages/intlayer/getHTMLTextDir.md +4 -10
  863. package/docs/tr/packages/intlayer/getLocaleLang.md +4 -10
  864. package/docs/tr/packages/intlayer/getLocaleName.md +4 -10
  865. package/docs/tr/packages/intlayer/getLocalizedUrl.md +4 -10
  866. package/docs/tr/packages/intlayer/getMultilingualUrls.md +4 -10
  867. package/docs/tr/packages/intlayer/getPathWithoutLocale.md +4 -10
  868. package/docs/tr/packages/intlayer/getTranslation.md +4 -10
  869. package/docs/tr/packages/intlayer/getTranslationContent.md +4 -10
  870. package/docs/tr/packages/next-intlayer/t.md +4 -6
  871. package/docs/tr/packages/next-intlayer/useDictionary.md +4 -6
  872. package/docs/tr/packages/next-intlayer/useIntlayer.md +4 -6
  873. package/docs/tr/packages/next-intlayer/useLocale.md +4 -6
  874. package/docs/tr/packages/react-intlayer/t.md +4 -6
  875. package/docs/tr/packages/react-intlayer/useDictionary.md +10 -273
  876. package/docs/tr/packages/react-intlayer/useI18n.md +5 -5
  877. package/docs/tr/packages/react-intlayer/useIntlayer.md +4 -6
  878. package/docs/tr/packages/react-intlayer/useLocale.md +4 -6
  879. package/docs/tr/per_locale_file.md +4 -6
  880. package/docs/tr/roadmap.md +11 -9
  881. package/docs/tr/testing.md +4 -7
  882. package/docs/tr/vs_code_extension.md +13 -9
  883. package/docs/zh/CI_CD.md +4 -6
  884. package/docs/zh/autoFill.md +10 -8
  885. package/docs/zh/configuration.md +19 -22
  886. package/docs/zh/dictionary/content_file.md +7 -7
  887. package/docs/zh/dictionary/enumeration.md +4 -4
  888. package/docs/zh/dictionary/file.md +4 -4
  889. package/docs/zh/dictionary/function_fetching.md +4 -4
  890. package/docs/zh/dictionary/gender.md +4 -6
  891. package/docs/zh/dictionary/insertion.md +4 -4
  892. package/docs/zh/dictionary/translation.md +4 -4
  893. package/docs/zh/formatters.md +19 -55
  894. package/docs/zh/how_works_intlayer.md +5 -5
  895. package/docs/zh/index.md +4 -4
  896. package/docs/zh/interest_of_intlayer.md +7 -7
  897. package/docs/zh/intlayer_CMS.md +10 -9
  898. package/docs/zh/intlayer_cli.md +7 -7
  899. package/docs/zh/intlayer_visual_editor.md +5 -6
  900. package/docs/zh/intlayer_with_angular.md +8 -8
  901. package/docs/zh/intlayer_with_astro.md +244 -0
  902. package/docs/zh/intlayer_with_create_react_app.md +9 -8
  903. package/docs/zh/intlayer_with_express.md +8 -8
  904. package/docs/zh/intlayer_with_lynx+react.md +6 -6
  905. package/docs/zh/intlayer_with_nestjs.md +8 -10
  906. package/docs/zh/intlayer_with_nextjs_14.md +8 -8
  907. package/docs/zh/intlayer_with_nextjs_15.md +9 -8
  908. package/docs/zh/intlayer_with_nextjs_page_router.md +8 -8
  909. package/docs/zh/intlayer_with_nuxt.md +8 -8
  910. package/docs/zh/intlayer_with_react_native+expo.md +25 -34
  911. package/docs/zh/intlayer_with_react_router_v7.md +204 -252
  912. package/docs/zh/intlayer_with_tanstack.md +211 -288
  913. package/docs/zh/intlayer_with_vite+preact.md +15 -15
  914. package/docs/zh/intlayer_with_vite+react.md +16 -15
  915. package/docs/zh/intlayer_with_vite+solid.md +6 -6
  916. package/docs/zh/intlayer_with_vite+svelte.md +6 -6
  917. package/docs/zh/intlayer_with_vite+vue.md +15 -15
  918. package/docs/zh/introduction.md +4 -4
  919. package/docs/zh/locale_mapper.md +4 -6
  920. package/docs/zh/mcp_server.md +13 -9
  921. package/docs/zh/packages/express-intlayer/t.md +4 -4
  922. package/docs/zh/packages/intlayer/getConfiguration.md +4 -4
  923. package/docs/zh/packages/intlayer/getEnumeration.md +4 -4
  924. package/docs/zh/packages/intlayer/getHTMLTextDir.md +4 -4
  925. package/docs/zh/packages/intlayer/getLocaleLang.md +4 -4
  926. package/docs/zh/packages/intlayer/getLocaleName.md +4 -4
  927. package/docs/zh/packages/intlayer/getLocalizedUrl.md +7 -16
  928. package/docs/zh/packages/intlayer/getMultilingualUrls.md +4 -4
  929. package/docs/zh/packages/intlayer/getPathWithoutLocale.md +4 -4
  930. package/docs/zh/packages/intlayer/getTranslation.md +4 -4
  931. package/docs/zh/packages/intlayer/getTranslationContent.md +4 -4
  932. package/docs/zh/packages/next-intlayer/t.md +4 -4
  933. package/docs/zh/packages/next-intlayer/useDictionary.md +4 -4
  934. package/docs/zh/packages/next-intlayer/useIntlayer.md +4 -4
  935. package/docs/zh/packages/next-intlayer/useLocale.md +4 -4
  936. package/docs/zh/packages/react-intlayer/t.md +4 -4
  937. package/docs/zh/packages/react-intlayer/useDictionary.md +4 -4
  938. package/docs/zh/packages/react-intlayer/useI18n.md +4 -4
  939. package/docs/zh/packages/react-intlayer/useIntlayer.md +4 -4
  940. package/docs/zh/packages/react-intlayer/useLocale.md +4 -4
  941. package/docs/zh/per_locale_file.md +4 -4
  942. package/docs/zh/roadmap.md +7 -5
  943. package/docs/zh/testing.md +4 -7
  944. package/docs/zh/vs_code_extension.md +13 -9
  945. package/frequent_questions/ar/bun_set_up.md +54 -0
  946. package/frequent_questions/de/bun_set_up.md +54 -0
  947. package/frequent_questions/en/bun_set_up.md +54 -0
  948. package/frequent_questions/en-GB/bun_set_up.md +54 -0
  949. package/frequent_questions/es/bun_set_up.md +54 -0
  950. package/frequent_questions/fr/bun_set_up.md +54 -0
  951. package/frequent_questions/hi/bun_set_up.md +55 -0
  952. package/frequent_questions/it/bun_set_up.md +55 -0
  953. package/frequent_questions/ja/bun_set_up.md +54 -0
  954. package/frequent_questions/ko/bun_set_up.md +54 -0
  955. package/frequent_questions/pt/bun_set_up.md +55 -0
  956. package/frequent_questions/ru/bun_set_up.md +55 -0
  957. package/frequent_questions/tr/bun_set_up.md +55 -0
  958. package/frequent_questions/zh/bun_set_up.md +54 -0
  959. package/package.json +42 -47
  960. package/src/blog.ts +16 -8
  961. package/src/common.ts +7 -8
  962. package/src/doc.ts +18 -8
  963. package/src/frequentQuestions.ts +23 -8
  964. package/src/generated/blog.entry.ts +152 -84
  965. package/src/generated/docs.entry.ts +536 -219
  966. package/src/generated/frequentQuestions.entry.ts +122 -56
  967. package/src/generated/legal.entry.ts +32 -24
  968. package/src/legal.ts +16 -8
  969. package/LICENSE +0 -202
  970. package/dist/cjs/index.cjs.map +0 -1
  971. package/dist/esm/index.mjs.map +0 -1
  972. package/dist/types/index.d.ts.map +0 -1
  973. package/docs/de/packages/@intlayer/api/index.md +0 -56
  974. package/docs/de/packages/@intlayer/chokidar/index.md +0 -56
  975. package/docs/de/packages/@intlayer/cli/index.md +0 -45
  976. package/docs/de/packages/@intlayer/config/index.md +0 -140
  977. package/docs/de/packages/@intlayer/core/index.md +0 -49
  978. package/docs/de/packages/@intlayer/design-system/index.md +0 -45
  979. package/docs/de/packages/@intlayer/dictionary-entry/index.md +0 -45
  980. package/docs/de/packages/@intlayer/editor/index.md +0 -45
  981. package/docs/de/packages/@intlayer/editor-react/index.md +0 -45
  982. package/docs/de/packages/@intlayer/webpack/index.md +0 -59
  983. package/docs/de/packages/angular-intlayer/index.md +0 -53
  984. package/docs/de/packages/express-intlayer/index.md +0 -284
  985. package/docs/de/packages/intlayer/index.md +0 -500
  986. package/docs/de/packages/intlayer-cli/index.md +0 -65
  987. package/docs/de/packages/intlayer-editor/index.md +0 -137
  988. package/docs/de/packages/lynx-intlayer/index.md +0 -83
  989. package/docs/de/packages/next-intlayer/index.md +0 -285
  990. package/docs/de/packages/nuxt-intlayer/index.md +0 -53
  991. package/docs/de/packages/preact-intlayer/index.md +0 -53
  992. package/docs/de/packages/react-intlayer/index.md +0 -280
  993. package/docs/de/packages/react-native-intlayer/index.md +0 -83
  994. package/docs/de/packages/react-scripts-intlayer/index.md +0 -80
  995. package/docs/de/packages/solid-intlayer/index.md +0 -54
  996. package/docs/de/packages/svelte-intlayer/index.md +0 -53
  997. package/docs/de/packages/vite-intlayer/index.md +0 -76
  998. package/docs/de/packages/vue-intlayer/index.md +0 -53
  999. package/docs/es/packages/angular-intlayer/index.md +0 -53
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
3
  updatedAt: 2025-09-09
4
- title: Tanstack Start 中使用 Intlayer 入门
5
- description: 学习如何使用 Intlayer 为您的 Tanstack Start 应用添加国际化 (i18n)。按照本综合指南,使您的应用支持多语言和基于区域设置的路由。
4
+ title: 如何翻译您的Tanstack Start应用 i18n指南 2025
5
+ description: 学习如何使用 Intlayer 为您的 Tanstack Start 应用添加国际化 (i18n)。按照本综合指南,使您的应用支持多语言并具备基于区域设置的路由功能。
6
6
  keywords:
7
7
  - 国际化
8
8
  - 文档
@@ -15,19 +15,21 @@ keywords:
15
15
  slugs:
16
16
  - doc
17
17
  - environment
18
- - vite-and-react
19
18
  - tanstack-start
20
- applicationTemplate: https://github.com/AydinTheFirst/tanstack-start-intlayer
21
- author: AydinTheFirst
19
+ applicationTemplate: https://github.com/aymericzip/intlayer-tanstack-start-template
20
+ history:
21
+ - version: 5.8.1
22
+ date: 2025-09-09
23
+ changes: 为 Tanstack Start 添加支持
22
24
  ---
23
25
 
24
- # 使用 IntlayerTanstack Start 开始国际化 (i18n)
26
+ # 使用Intlayer翻译您的Tanstack Start | 国际化(i18n)
25
27
 
26
- 本指南演示了如何在 Tanstack Start 项目中集成 **Intlayer**,实现无缝国际化,支持基于区域设置的路由、TypeScript 支持以及现代开发实践。
28
+ 本指南演示如何在 Tanstack Start 项目中集成 **Intlayer**,实现无缝国际化,支持基于区域设置的路由、TypeScript 支持以及现代开发实践。
27
29
 
28
30
  ## 什么是 Intlayer?
29
31
 
30
- **Intlayer** 是一个创新的开源国际化 (i18n) 库,旨在简化现代 Web 应用中的多语言支持。
32
+ **Intlayer** 是一个创新的开源国际化(i18n)库,旨在简化现代 Web 应用中的多语言支持。
31
33
 
32
34
  使用 Intlayer,您可以:
33
35
 
@@ -43,7 +45,7 @@ author: AydinTheFirst
43
45
 
44
46
  ### 第一步:创建项目
45
47
 
46
- 首先,按照 TanStack Start 网站上的[创建新项目](https://tanstack.com/start/latest/docs/framework/react/quick-start)指南创建一个新的 TanStack Start 项目。
48
+ 首先,按照 TanStack Start 网站上的[新建项目](https://tanstack.com/start/latest/docs/framework/react/quick-start)指南创建一个新的 TanStack Start 项目。
47
49
 
48
50
  ### 第二步:安装 Intlayer 包
49
51
 
@@ -61,114 +63,61 @@ pnpm add vite-intlayer --save-dev
61
63
 
62
64
  - **intlayer**
63
65
 
64
- - **intlayer**
65
-
66
- 核心包,提供用于配置管理、翻译、[内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/get_started.md)、转译和[CLI命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_cli.md)的国际化工具。
67
-
68
- - **react-intlayer**
66
+ - **intlayer**
67
+ 核心包,提供用于配置管理、翻译、[内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/get_started.md)、转译以及[命令行工具](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_cli.md)的国际化工具。
69
68
 
69
+ - **react-intlayer**
70
70
  将 Intlayer 集成到 React 应用中的包。它为 React 国际化提供上下文提供者和钩子。
71
71
 
72
- - **vite-intlayer**
73
-
74
- 包含用于将 Intlayer 集成到[Vite 打包器](https://vite.dev/guide/why.html#why-bundle-for-production)的 Vite 插件,以及用于检测用户首选语言环境、管理 Cookie 和处理 URL 重定向的中间件。
72
+ - **vite-intlayer**
73
+ 包含用于将 Intlayer 集成到[Vite 打包器](https://vite.dev/guide/why.html#why-bundle-for-production)的 Vite 插件,以及用于检测用户首选语言、管理 Cookie 和处理 URL 重定向的中间件。
75
74
 
76
75
  ### 第三步:项目配置
77
76
 
78
77
  创建一个配置文件来配置您的应用程序语言:
79
78
 
80
- ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
79
+ ```typescript fileName="intlayer.config.ts"
81
80
  import type { IntlayerConfig } from "intlayer";
82
81
 
83
82
  import { Locales } from "intlayer";
84
83
 
85
84
  const config: IntlayerConfig = {
86
- internationalization: {
87
- defaultLocale: Locales.ENGLISH, // 默认语言
88
- locales: [
89
- Locales.ENGLISH, // 英语
90
- Locales.FRENCH, // 法语
91
- Locales.SPANISH, // 西班牙语
92
- // 您的其他语言
93
- ],
94
- },
95
- };
96
-
97
- export default config;
98
- ```
99
-
100
- ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
101
- import { Locales } from "intlayer";
102
-
103
- /** @type {import('intlayer').IntlayerConfig} */
104
- const config = {
105
- internationalization: {
106
- defaultLocale: Locales.ENGLISH, // 默认语言
107
- locales: [
108
- Locales.ENGLISH, // 英语
109
- Locales.FRENCH, // 法语
110
- Locales.SPANISH, // 西班牙语
111
- // 你的其他语言
112
- ],
113
- },
114
- };
115
-
116
- export default config;
117
- ```
118
-
119
- ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
120
- const { Locales } = require("intlayer");
121
-
122
- /** @type {import('intlayer').IntlayerConfig} */
123
- const config = {
124
85
  internationalization: {
125
86
  defaultLocale: Locales.ENGLISH,
126
- locales: [
127
- Locales.ENGLISH,
128
- Locales.FRENCH,
129
- Locales.SPANISH,
130
- // 你的其他语言
131
- ],
87
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
132
88
  },
133
89
  };
134
90
 
135
- module.exports = config;
91
+ export default config;
136
92
  ```
137
93
 
138
- > 通过此配置文件,您可以设置本地化的 URL、中间件重定向、Cookie 名称、内容声明的位置和扩展名,禁用控制台中的 Intlayer 日志等。有关可用参数的完整列表,请参阅[配置文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)。
94
+ > 通过此配置文件,您可以设置本地化 URL、中间件重定向、cookie 名称、内容声明的位置和扩展名、禁用控制台中的 Intlayer 日志等。有关可用参数的完整列表,请参阅[配置文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)。
139
95
 
140
96
  ### 第4步:在您的 Vite 配置中集成 Intlayer
141
97
 
142
98
  将 intlayer 插件添加到您的配置中:
143
99
 
144
- ```typescript fileName="vite.config.ts" codeFormat="typescript"
100
+ ```typescript fileName="vite.config.ts"
145
101
  import { reactRouter } from "@react-router/dev/vite";
146
102
  import { defineConfig } from "vite";
147
- import { intlayerMiddlewarePlugin, intlayer } from "vite-intlayer";
103
+ import { intlayer } from "vite-intlayer";
148
104
  import tsconfigPaths from "vite-tsconfig-paths";
149
105
 
150
106
  export default defineConfig({
151
- plugins: [
152
- reactRouter(),
153
- tsconfigPaths(),
154
- intlayer(),
155
- intlayerMiddlewarePlugin(),
156
- ],
107
+ plugins: [reactRouter(), tsconfigPaths(), intlayer()],
157
108
  });
158
109
  ```
159
110
 
160
- > `intlayer()` 是用于将 Intlayer 集成到 Vite 的插件。它确保内容声明文件的构建,并在开发模式下监控这些文件。它在 Vite 应用中定义了 Intlayer 的环境变量。此外,它还提供别名以优化性能。
111
+ > `intlayer()` Vite 插件用于将 Intlayer 集成到 Vite 中。它确保构建内容声明文件并在开发模式下监视它们。它在 Vite 应用中定义了 Intlayer 环境变量。此外,它还提供别名以优化性能。
161
112
 
162
- ### 第五步:创建布局组件
113
+ ### 第5步:创建布局组件
163
114
 
164
- 设置你的根布局和特定语言环境的布局:
115
+ 设置您的根布局和特定语言环境的布局:
165
116
 
166
117
  #### 根布局
167
118
 
168
- ```tsx fileName="src/routes/{-$locale}/route.tsx" codeFormat="typescript"
169
- // src/routes/{-$locale}/route.tsx
119
+ ```tsx fileName="src/routes/{-$locale}/route.tsx"
170
120
  import { createFileRoute, Navigate, Outlet } from "@tanstack/react-router";
171
- import { configuration } from "intlayer";
172
121
  import { IntlayerProvider, useLocale } from "react-intlayer";
173
122
 
174
123
  import { useI18nHTMLAttributes } from "@/hooks/useI18nHTMLAttributes";
@@ -178,10 +127,11 @@ export const Route = createFileRoute("/{-$locale}")({
178
127
  });
179
128
 
180
129
  function LayoutComponent() {
130
+ const { defaultLocale } = useLocale();
181
131
  const { locale } = Route.useParams();
182
132
 
183
133
  return (
184
- <IntlayerProvider locale={locale}>
134
+ <IntlayerProvider locale={defaultLocale}>
185
135
  <Outlet />
186
136
  </IntlayerProvider>
187
137
  );
@@ -192,7 +142,7 @@ function LayoutComponent() {
192
142
 
193
143
  创建并管理您的内容声明以存储翻译:
194
144
 
195
- ```tsx fileName="src/contents/page.content.ts" contentDeclarationFormat="typescript"
145
+ ```tsx fileName="src/contents/page.content.ts"
196
146
  import type { Dictionary } from "intlayer";
197
147
 
198
148
  import { t } from "intlayer";
@@ -201,25 +151,29 @@ const appContent = {
201
151
  content: {
202
152
  links: {
203
153
  about: t({
154
+ zh: "关于",
204
155
  en: "About",
205
156
  es: "Acerca de",
206
157
  fr: "À propos",
207
158
  }),
208
159
  home: t({
209
- en: "首页",
160
+ zh: "首页",
161
+ en: "Home",
210
162
  es: "Inicio",
211
163
  fr: "Accueil",
212
164
  }),
213
165
  },
214
166
  meta: {
215
167
  description: t({
216
- en: "这是一个使用 Intlayer TanStack Router 的示例",
168
+ zh: "这是一个使用 Intlayer TanStack Router 的示例",
169
+ en: "This is an example of using Intlayer with TanStack Router",
217
170
  es: "Este es un ejemplo de uso de Intlayer con TanStack Router",
218
171
  fr: "Ceci est un exemple d'utilisation d'Intlayer avec TanStack Router",
219
172
  }),
220
173
  },
221
174
  title: t({
222
- en: "欢迎使用 Intlayer + TanStack Router",
175
+ zh: "欢迎使用 Intlayer + TanStack Router",
176
+ en: "Welcome to Intlayer + TanStack Router",
223
177
  es: "Bienvenido a Intlayer + TanStack Router",
224
178
  fr: "Bienvenue à Intlayer + TanStack Router",
225
179
  }),
@@ -230,67 +184,107 @@ const appContent = {
230
184
  export default appContent;
231
185
  ```
232
186
 
233
- > 您的内容声明可以在应用程序中的任何位置定义,只要它们被包含在 `contentDir` 目录中(默认是 `./app`)。并且文件扩展名需匹配内容声明的文件扩展名(默认是 `.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`)。
187
+ > 您的内容声明可以在应用程序中的任何位置定义,只要它们被包含在 `contentDir` 目录中(默认是 `./app`)。并且文件扩展名需匹配内容声明文件扩展名(默认是 `.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`)。
234
188
 
235
189
  > 更多详情,请参阅[内容声明文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/get_started.md)。
236
190
 
237
- ### 第7步:创建支持多语言环境的组件和钩子
191
+ ### 第7步:创建支持多语言的组件和钩子
238
192
 
239
- 创建一个用于多语言环境导航的 `LocalizedLink` 组件:
193
+ 创建一个用于多语言导航的 `LocalizedLink` 组件:
240
194
 
241
- ```tsx fileName="src/components/localized-link.tsx" codeFormat="typescript"
242
- // src/components/localized-link.tsx
243
- // eslint-disable-next-line no-restricted-imports
244
- import { Link, type LinkProps } from "@tanstack/react-router";
245
- import { getLocalizedUrl } from "intlayer";
246
- import { useLocale } from "react-intlayer";
195
+ ```tsx fileName="src/components/localized-link.tsx"
196
+ import type { FC } from "react";
197
+
198
+ import { Link, type LinkComponentProps } from "@tanstack/react-router";
199
+ import { useLocale } from "intlayer";
200
+
201
+ export const LOCALE_ROUTE = "{-$locale}" as const;
202
+
203
+ // 主要工具类型
204
+ export type RemoveLocaleParam<T> = T extends string
205
+ ? RemoveLocaleFromString<T>
206
+ : T;
207
+
208
+ export type To = RemoveLocaleParam<LinkComponentProps["to"]>;
209
+
210
+ type CollapseDoubleSlashes<S extends string> =
211
+ S extends `${infer H}//${infer T}` ? CollapseDoubleSlashes<`${H}/${T}`> : S;
247
212
 
248
213
  type LocalizedLinkProps = {
249
- to: string;
250
- } & Omit<LinkProps, "to">;
214
+ to?: To;
215
+ } & Omit<LinkComponentProps, "to">;
251
216
 
252
- export function LocalizedLink(props: LocalizedLinkProps) {
253
- const { locale } = useLocale();
217
+ // 辅助类型
218
+ type RemoveAll<
219
+ S extends string,
220
+ Sub extends string,
221
+ > = S extends `${infer H}${Sub}${infer T}` ? RemoveAll<`${H}${T}`, Sub> : S;
254
222
 
255
- const isExternal = (to: string) => {
256
- return /^(https?:)?\/\//.test(to);
257
- };
223
+ type RemoveLocaleFromString<S extends string> = CollapseDoubleSlashes<
224
+ RemoveAll<S, typeof LOCALE_ROUTE>
225
+ >;
258
226
 
259
- const to = isExternal(props.to)
260
- ? props.to
261
- : getLocalizedUrl(props.to, locale);
227
+ export const LocalizedLink: FC<LocalizedLinkProps> = (props) => {
228
+ const { locale } = useLocale();
262
229
 
263
- return <Link {...props} to={to as LinkProps["to"]} />;
264
- }
230
+ return (
231
+ <Link
232
+ {...props}
233
+ params={{
234
+ locale,
235
+ ...(typeof props?.params === "object" ? props?.params : {}),
236
+ }}
237
+ to={`/${LOCALE_ROUTE}${props.to}` as LinkComponentProps["to"]}
238
+ />
239
+ );
240
+ };
265
241
  ```
266
242
 
267
- 创建一个用于编程式导航的 `useLocalizedNavigate` 钩子:
243
+ 该组件有两个目标:
268
244
 
269
- ```tsx fileName="src/hooks/useLocalizedNavigate.tsx" codeFormat="typescript"
270
- // src/hooks/useLocalizedNavigate.tsx
271
- // eslint-disable-next-line no-restricted-imports
272
- import { NavigateOptions, useNavigate } from "@tanstack/react-router";
273
- import { getLocalizedUrl } from "intlayer";
274
- import { useLocale } from "react-intlayer";
245
+ - 移除 URL 中不必要的 `{-$locale}` 前缀。
246
+ - 将 locale 参数注入 URL,确保用户被直接重定向到本地化路由。
247
+
248
+ 接下来我们可以创建一个用于编程导航的 `useLocalizedNavigate` 钩子:
275
249
 
276
- type LocalizedNavigateOptions = {
277
- to: string;
278
- } & Omit<NavigateOptions, "to">;
250
+ ```tsx fileName="src/hooks/useLocalizedNavigate.tsx"
251
+ import { useLocale } from "react-intlayer";
252
+ import { useNavigate } from "@tanstack/react-router";
253
+ import { LOCALE_ROUTE } from "@/components/localized-link";
254
+ import type { FileRouteTypes } from "@/routeTree.gen";
279
255
 
280
256
  export const useLocalizedNavigate = () => {
281
257
  const navigate = useNavigate();
258
+
282
259
  const { locale } = useLocale();
283
260
 
284
- const isExternal = (to: string) => {
285
- return /^(https?:)?\/\//.test(to);
286
- };
261
+ type StripLocalePrefix<T extends string> = T extends
262
+ | `/${typeof LOCALE_ROUTE}`
263
+ | `/${typeof LOCALE_ROUTE}/`
264
+ ? "/" // 去除本地化前缀后返回根路径
265
+ : T extends `/${typeof LOCALE_ROUTE}/${infer Rest}`
266
+ ? `/${Rest}` // 去除本地化前缀后返回剩余路径
267
+ : never;
268
+
269
+ type LocalizedTo = StripLocalePrefix<FileRouteTypes["to"]>;
270
+
271
+ interface LocalizedNavigate {
272
+ (to: LocalizedTo): ReturnType<typeof navigate>;
273
+ (
274
+ opts: { to: LocalizedTo } & Record<string, unknown>
275
+ ): ReturnType<typeof navigate>;
276
+ }
287
277
 
288
- const localizedNavigate = (options: LocalizedNavigateOptions) => {
289
- const to = isExternal(options.to)
290
- ? options.to
291
- : getLocalizedUrl(options.to, locale);
278
+ const localizedNavigate: LocalizedNavigate = (args: any) => {
279
+ if (typeof args === "string") {
280
+ return navigate({ to: `/${LOCALE_ROUTE}${args}`, params: { locale } });
281
+ }
292
282
 
293
- navigate({ ...options, to: to as NavigateOptions["to"] });
283
+ const { to, ...rest } = args;
284
+
285
+ const localedTo = `/${LOCALE_ROUTE}${to}` as any;
286
+
287
+ return navigate({ to: localedTo, params: { locale, ...rest } as any });
294
288
  };
295
289
 
296
290
  return localizedNavigate;
@@ -301,23 +295,9 @@ export const useLocalizedNavigate = () => {
301
295
 
302
296
  在整个应用程序中访问您的内容字典:
303
297
 
304
- #### 根重定向页面
305
-
306
- ```tsx fileName="src/routes/page.tsx" codeFormat="typescript"
307
- // src/routes/page.tsx
308
- import { useLocale } from "react-intlayer";
309
- import { Navigate } from "react-router";
310
-
311
- export default function Page() {
312
- const { locale } = useLocale();
313
-
314
- return <Navigate replace to={locale} />;
315
- }
316
- ```
317
-
318
298
  #### 本地化首页
319
299
 
320
- ```tsx fileName="src/routes/{-$locale}/index.tsx" codeFormat="typescript"
300
+ ```tsx fileName="src/routes/{-$locale}/index.tsx"
321
301
  import { createFileRoute } from "@tanstack/react-router";
322
302
  import { getIntlayer } from "intlayer";
323
303
  import { useIntlayer } from "react-intlayer";
@@ -346,16 +326,15 @@ function RouteComponent() {
346
326
  const navigate = useLocalizedNavigate();
347
327
 
348
328
  return (
349
- <div className="grid place-items-center h-screen">
350
- <div className="flex flex-col gap-4 items-center text-center">
329
+ <div>
330
+ <div>
351
331
  {content.title}
352
332
  <LocaleSwitcher />
353
- <div className="flex gap-4">
354
- <a href="/">索引</a>
333
+ <div>
355
334
  <LocalizedLink to="/">{content.links.home}</LocalizedLink>
356
335
  <LocalizedLink to="/about">{content.links.about}</LocalizedLink>
357
336
  </div>
358
- <div className="flex gap-4">
337
+ <div>
359
338
  <button onClick={() => navigate({ to: "/" })}>
360
339
  {content.links.home}
361
340
  </button>
@@ -369,63 +348,71 @@ function RouteComponent() {
369
348
  }
370
349
  ```
371
350
 
372
- > 想了解更多关于 `useIntlayer` 钩子的内容,请参阅[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useIntlayer.md)。
351
+ > 要了解更多关于 `useIntlayer` 钩子的内容,请参阅[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useIntlayer.md)。
373
352
 
374
353
  ### 第9步:创建语言切换组件
375
354
 
376
355
  创建一个组件,允许用户切换语言:
377
356
 
378
- ```tsx fileName="src/components/locale-switcher.tsx" codeFormat="typescript"
357
+ ```tsx fileName="src/components/locale-switcher.tsx"
358
+ import type { FC } from "react";
359
+
379
360
  import { useLocation } from "@tanstack/react-router";
380
- import {
381
- getHTMLTextDir,
382
- getLocaleName,
383
- getLocalizedUrl,
384
- Locales,
385
- } from "intlayer";
386
- import { useIntlayer, useLocale } from "react-intlayer";
387
-
388
- export default function LocaleSwitcher() {
389
- const { pathname, searchStr } = useLocation();
390
- const content = useIntlayer("locale-switcher");
391
-
392
- const { availableLocales, locale, setLocale } = useLocale({
393
- onLocaleChange: (newLocale) => {
394
- const pathWithLocale = getLocalizedUrl(pathname + searchStr, newLocale);
395
- location.replace(pathWithLocale);
396
- },
397
- });
361
+ import { getHTMLTextDir, getLocaleName, getPathWithoutLocale } from "intlayer";
362
+ import { setLocaleCookie, useIntlayer, useLocale } from "react-intlayer";
363
+
364
+ import { LocalizedLink, To } from "./localized-link";
365
+
366
+ export const LocaleSwitcher: FC = () => {
367
+ const { localeSwitcherLabel } = useIntlayer("locale-switcher"); // 使用 useIntlayer 钩子获取语言切换器标签
368
+ const { pathname } = useLocation(); // 获取当前路径名
369
+
370
+ const { availableLocales, locale } = useLocale(); // 获取可用语言列表和当前语言
371
+
372
+ const pathWithoutLocale = getPathWithoutLocale(pathname); // 获取不带语言前缀的路径
398
373
 
399
374
  return (
400
- <select
401
- aria-label={content.label.toString()}
402
- onChange={(e) => setLocale(e.target.value)}
403
- value={locale}
404
- >
405
- {availableLocales.map((localeItem) => (
406
- <option
407
- dir={getHTMLTextDir(localeItem)}
408
- key={localeItem}
409
- lang={localeItem}
410
- value={localeItem}
411
- >
412
- {/* 示例:Français(法语) */}
413
- {getLocaleName(localeItem, locale)} (
414
- {getLocaleName(localeItem, Locales.ENGLISH)})
415
- </option>
375
+ <ol>
376
+ {availableLocales.map((localeEl) => (
377
+ <li key={localeEl}>
378
+ <LocalizedLink
379
+ aria-current={localeEl === locale ? "page" : undefined} // 当前语言时设置 aria-current 为 page
380
+ aria-label={`${localeSwitcherLabel.value} ${getLocaleName(localeEl)}`} // 设置无障碍标签,显示语言切换器标签和语言名称
381
+ onClick={() => setLocaleCookie(localeEl)} // 点击时设置语言 cookie
382
+ params={{ locale: localeEl }} // 传递语言参数
383
+ to={pathWithoutLocale as To} // 跳转到不带语言前缀的路径
384
+ >
385
+ <span>
386
+ {/* 语言环境 - 例如 FR */}
387
+ {localeItem}
388
+ </span>
389
+ <span>
390
+ {/* 语言在其自身语言环境中的名称 - 例如 Français */}
391
+ {getLocaleName(localeItem, locale)}
392
+ </span>
393
+ <span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
394
+ {/* 语言在当前语言环境中的名称 - 例如当前语言环境为 Locales.SPANISH 时显示 Francés */}
395
+ {getLocaleName(localeItem)}
396
+ </span>
397
+ <span dir="ltr" lang={Locales.ENGLISH}>
398
+ {/* 语言的英文名称 - 例如 French */}
399
+ {getLocaleName(localeItem, Locales.ENGLISH)}
400
+ </span>
401
+ </LocalizedLink>
402
+ </li>
416
403
  ))}
417
- </select>
404
+ </ol>
418
405
  );
419
- }
406
+ };
420
407
  ```
421
408
 
422
- > 想了解更多关于 `useLocale` 钩子的内容,请参考[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useLocale.md)。
409
+ > 要了解有关 `useLocale` 钩子的更多信息,请参阅[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useLocale.md)。
423
410
 
424
- ### 第10步:添加HTML属性管理(可选)
411
+ ### 第10步:添加 HTML 属性管理(可选)
425
412
 
426
- 创建一个钩子来管理HTML的lang和dir属性:
413
+ 创建一个钩子来管理 HTML lang dir 属性:
427
414
 
428
- ```tsx fileName="src/hooks/useI18nHTMLAttributes.tsx" codeFormat="typescript"
415
+ ```tsx fileName="src/hooks/useI18nHTMLAttributes.tsx"
429
416
  // src/hooks/useI18nHTMLAttributes.tsx
430
417
  import { getHTMLTextDir } from "intlayer";
431
418
  import { useEffect } from "react";
@@ -436,19 +423,18 @@ export const useI18nHTMLAttributes = () => {
436
423
 
437
424
  useEffect(() => {
438
425
  document.documentElement.lang = locale;
439
- document.documentElement.dir = getHTMLTextDir(locale); // 设置HTML的文本方向属性
426
+ document.documentElement.dir = getHTMLTextDir(locale);
440
427
  }, [locale]);
441
428
  };
442
429
  ```
443
430
 
444
431
  然后在你的根组件中使用它:
445
432
 
446
- ```tsx fileName="src/routes/{-$locale}/index.tsx" codeFormat="typescript"
433
+ ```tsx fileName="src/routes/{-$locale}/index.tsx"
447
434
  import { createFileRoute, Navigate, Outlet } from "@tanstack/react-router";
448
- import { configuration } from "intlayer";
449
435
  import { IntlayerProvider, useLocale } from "react-intlayer";
450
436
 
451
- import { useI18nHTMLAttributes } from "@/hooks/useI18nHTMLAttributes"; // 导入该hook
437
+ import { useI18nHTMLAttributes } from "@/hooks/useI18nHTMLAttributes"; // 导入钩子
452
438
 
453
439
  export const Route = createFileRoute("/{-$locale}")({
454
440
  component: LayoutComponent,
@@ -457,55 +443,54 @@ export const Route = createFileRoute("/{-$locale}")({
457
443
  function LayoutComponent() {
458
444
  useI18nHTMLAttributes(); // 添加此行
459
445
 
446
+ const { defaultLocale } = useLocale();
460
447
  const { locale } = Route.useParams();
461
448
 
462
449
  return (
463
- <IntlayerProvider locale={locale}>
450
+ <IntlayerProvider locale={locale ?? defaultLocale}>
464
451
  <Outlet />
465
452
  </IntlayerProvider>
466
453
  );
467
454
  }
468
455
  ```
469
456
 
470
- ### 第11步:构建并运行您的应用程序
457
+ ---
471
458
 
472
- 构建内容字典并运行您的应用程序:
459
+ ### 第11步:添加中间件(可选)
473
460
 
474
- ```bash packageManager="npm"
475
- # 构建 Intlayer 字典
476
- npm run intlayer:build
461
+ 您还可以使用 `intlayerMiddleware` 为您的应用程序添加服务器端路由。该插件将根据 URL 自动检测当前语言环境,并设置相应的语言环境 Cookie。如果未指定语言环境,插件将根据用户浏览器的语言偏好确定最合适的语言环境。如果未检测到语言环境,它将重定向到默认语言环境。
477
462
 
478
- # 启动开发服务器
479
- npm run dev
480
- ```
463
+ > 注意,要在生产环境中使用 `intlayerMiddleware`,您需要将 `vite-intlayer` 包从 `devDependencies` 切换到 `dependencies`。
481
464
 
482
- ```bash packageManager="pnpm"
483
- # 构建 Intlayer 字典
484
- pnpm intlayer:build
465
+ ```typescript {3,7} fileName="vite.config.ts"
466
+ import { reactRouter } from "@react-router/dev/vite";
467
+ import tailwindcss from "@tailwindcss/vite";
468
+ import { defineConfig } from "vite";
469
+ import { intlayer, intlayerMiddleware } from "vite-intlayer";
470
+ import tsconfigPaths from "vite-tsconfig-paths";
485
471
 
486
- # 启动开发服务器
487
- pnpm dev
472
+ export default defineConfig({
473
+ plugins: [
474
+ tailwindcss(),
475
+ reactRouter(),
476
+ tsconfigPaths(),
477
+ intlayer(),
478
+ intlayerMiddleware(),
479
+ ],
480
+ });
488
481
  ```
489
482
 
490
- ```bash packageManager="yarn"
491
- # 构建 Intlayer 字典
492
- yarn intlayer:build
493
-
494
- # 启动开发服务器
495
- yarn dev
496
- ```
483
+ ---
497
484
 
498
485
  ### 第12步:配置 TypeScript(可选)
499
486
 
500
- Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库更强大。
487
+ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库更健壮。
501
488
 
502
489
  确保您的 TypeScript 配置包含自动生成的类型:
503
490
 
504
491
  ```json5 fileName="tsconfig.json"
505
492
  {
506
- compilerOptions: {
507
- // ... 您现有的 TypeScript 配置
508
- },
493
+ // ... 您现有的配置
509
494
  include: [
510
495
  // ... 您现有的包含项
511
496
  ".intlayer/**/*.ts", // 包含自动生成的类型
@@ -513,11 +498,13 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
513
498
  }
514
499
  ```
515
500
 
501
+ ---
502
+
516
503
  ### Git 配置
517
504
 
518
- 建议忽略 Intlayer 生成的文件。这样可以避免将它们提交到您的 Git 仓库。
505
+ 建议忽略 Intlayer 生成的文件。这样可以避免将它们提交到您的 Git 仓库中。
519
506
 
520
- 为此,您可以将以下指令添加到您的 `.gitignore` 文件中:
507
+ 要做到这一点,您可以将以下指令添加到您的 `.gitignore` 文件中:
521
508
 
522
509
  ```plaintext fileName=".gitignore"
523
510
  # 忽略 Intlayer 生成的文件
@@ -526,64 +513,6 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
526
513
 
527
514
  ---
528
515
 
529
- ### 第 13 步:创建重定向(可选)
530
-
531
- ```typescript fileName="src/routes/{-$locale}/rotue.tsx" codeFormat="typescript"
532
- function LayoutComponent() {
533
- useI18nHTMLAttributes();
534
-
535
- const { locale } = Route.useParams();
536
- const { locale: selectedLocale } = useLocale();
537
- const { defaultLocale } = configuration.internationalization;
538
- const { prefixDefault } = configuration.middleware;
539
-
540
- // 如果 prefixDefault 为 true 且 URL 中没有 locale,则重定向到默认语言
541
- if (selectedLocale === defaultLocale && !locale && prefixDefault) {
542
- return <Navigate replace to={defaultLocale} />;
543
- }
544
-
545
- // 如果 URL 中的 locale 与选定的 locale 不匹配,则重定向到选定的 locale
546
- if (selectedLocale !== defaultLocale && !locale) {
547
- return <Navigate replace to={selectedLocale} />;
548
- }
549
-
550
- return (
551
- <IntlayerProvider locale={locale}>
552
- <Outlet />
553
- </IntlayerProvider>
554
- );
555
- }
556
- ```
557
-
558
- ## 生产部署
559
-
560
- 部署您的应用程序时:
561
-
562
- 1. **构建您的应用程序:**
563
-
564
- ```bash
565
- npm run build
566
- ```
567
-
568
- 2. **构建 Intlayer 词典:**
569
-
570
- ```bash
571
- npm run intlayer:build
572
- ```
573
-
574
- 3. **如果在生产环境中使用中间件,请将 `vite-intlayer` 移动到依赖项:**
575
- ```bash
576
- npm install vite-intlayer --save
577
- ```
578
-
579
- 您的应用程序现在将支持:
580
-
581
- - **URL 结构**:`/en`、`/en/about`、`/tr`、`/tr/about`
582
- - **基于浏览器偏好的自动语言环境检测**
583
- - **基于 Tanstack Start 的语言环境感知路由**
584
- - **带有自动生成类型的 TypeScript 支持**
585
- - **具有正确语言环境处理的服务器端渲染**
586
-
587
516
  ## VS Code 扩展
588
517
 
589
518
  为了提升您使用 Intlayer 的开发体验,您可以安装官方的 **Intlayer VS Code 扩展**。
@@ -592,18 +521,18 @@ function LayoutComponent() {
592
521
 
593
522
  该扩展提供:
594
523
 
595
- - 翻译键的 **自动补全**。
596
- - 缺失翻译的 **实时错误检测**。
597
- - 翻译内容的 **内联预览**。
598
- - 轻松创建和更新翻译的 **快速操作**。
524
+ - 翻译键的**自动补全**。
525
+ - 缺失翻译的**实时错误检测**。
526
+ - 翻译内容的**内联预览**。
527
+ - 轻松创建和更新翻译的**快速操作**。
599
528
 
600
- 有关如何使用该扩展的更多详细信息,请参阅 [Intlayer VS Code 扩展文档](https://intlayer.org/doc/vs-code-extension)。
529
+ 有关如何使用该扩展的更多详细信息,请参阅[Intlayer VS Code 扩展文档](https://intlayer.org/doc/vs-code-extension)。
601
530
 
602
531
  ---
603
532
 
604
- ## 深入了解
533
+ ## 深入探索
605
534
 
606
- 要进一步提升,您可以实现[可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md)或使用[CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md)将内容外部化。
535
+ 要进一步使用,您可以实现[可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md)或使用[内容管理系统(CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md)将内容外部化。
607
536
 
608
537
  ---
609
538
 
@@ -612,14 +541,8 @@ function LayoutComponent() {
612
541
  - [Intlayer 文档](https://intlayer.org)
613
542
  - [Tanstack Start 文档](https://reactrouter.com/)
614
543
  - [useIntlayer 钩子](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useIntlayer.md)
615
- - [useLocale 钩子](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useLocale.md)
544
+ - [useLocale hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/react-intlayer/useLocale.md)
616
545
  - [内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/get_started.md)
617
546
  - [配置](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)
618
547
 
619
- 本综合指南提供了将 Intlayer 与 Tanstack Start 集成所需的一切,支持完全国际化的应用程序,具备区域感知路由和 TypeScript 支持。
620
-
621
- ## 文档历史
622
-
623
- | 版本 | 日期 | 变更内容 |
624
- | ----- | ---------- | ---------------------- |
625
- | 5.8.1 | 2025-09-09 | 为 Tanstack Start 添加 |
548
+ 本综合指南提供了将 Intlayer 与 Tanstack Start 集成所需的一切,支持完全国际化的应用程序,具备基于区域设置的路由和 TypeScript 支持。