@intlayer/docs 7.5.6 → 7.5.8

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 (534) hide show
  1. package/blog/ar/intlayer_with_i18next.md +8 -4
  2. package/blog/ar/intlayer_with_next-i18next.md +8 -4
  3. package/blog/ar/intlayer_with_next-intl.md +8 -4
  4. package/blog/ar/intlayer_with_react-i18next.md +8 -4
  5. package/blog/ar/intlayer_with_react-intl.md +8 -4
  6. package/blog/ar/intlayer_with_vue-i18n.md +8 -4
  7. package/blog/de/intlayer_with_i18next.md +8 -4
  8. package/blog/de/intlayer_with_next-i18next.md +8 -4
  9. package/blog/de/intlayer_with_next-intl.md +8 -4
  10. package/blog/de/intlayer_with_react-i18next.md +8 -4
  11. package/blog/de/intlayer_with_react-intl.md +8 -4
  12. package/blog/de/intlayer_with_vue-i18n.md +8 -4
  13. package/blog/en/intlayer_with_i18next.md +8 -4
  14. package/blog/en/intlayer_with_next-i18next.md +8 -4
  15. package/blog/en/intlayer_with_next-intl.md +8 -4
  16. package/blog/en/intlayer_with_react-i18next.md +8 -4
  17. package/blog/en/intlayer_with_react-intl.md +8 -4
  18. package/blog/en/intlayer_with_vue-i18n.md +8 -4
  19. package/blog/en-GB/intlayer_with_i18next.md +8 -4
  20. package/blog/en-GB/intlayer_with_next-i18next.md +8 -4
  21. package/blog/en-GB/intlayer_with_next-intl.md +8 -4
  22. package/blog/en-GB/intlayer_with_react-i18next.md +8 -4
  23. package/blog/en-GB/intlayer_with_react-intl.md +8 -4
  24. package/blog/en-GB/intlayer_with_vue-i18n.md +8 -4
  25. package/blog/es/intlayer_with_i18next.md +8 -4
  26. package/blog/es/intlayer_with_next-i18next.md +8 -4
  27. package/blog/es/intlayer_with_next-intl.md +8 -4
  28. package/blog/es/intlayer_with_react-i18next.md +8 -4
  29. package/blog/es/intlayer_with_react-intl.md +8 -4
  30. package/blog/es/intlayer_with_vue-i18n.md +8 -4
  31. package/blog/fr/intlayer_with_i18next.md +8 -4
  32. package/blog/fr/intlayer_with_next-i18next.md +8 -4
  33. package/blog/fr/intlayer_with_next-intl.md +8 -4
  34. package/blog/fr/intlayer_with_react-i18next.md +8 -4
  35. package/blog/fr/intlayer_with_react-intl.md +8 -4
  36. package/blog/fr/intlayer_with_vue-i18n.md +8 -4
  37. package/blog/hi/intlayer_with_i18next.md +8 -4
  38. package/blog/hi/intlayer_with_next-i18next.md +8 -4
  39. package/blog/hi/intlayer_with_next-intl.md +8 -4
  40. package/blog/hi/intlayer_with_react-i18next.md +8 -4
  41. package/blog/hi/intlayer_with_react-intl.md +8 -4
  42. package/blog/hi/intlayer_with_vue-i18n.md +8 -4
  43. package/blog/id/intlayer_with_i18next.md +8 -4
  44. package/blog/id/intlayer_with_next-i18next.md +8 -4
  45. package/blog/id/intlayer_with_next-intl.md +8 -4
  46. package/blog/id/intlayer_with_react-i18next.md +8 -4
  47. package/blog/id/intlayer_with_react-intl.md +8 -4
  48. package/blog/id/intlayer_with_vue-i18n.md +8 -4
  49. package/blog/it/intlayer_with_i18next.md +8 -4
  50. package/blog/it/intlayer_with_next-i18next.md +8 -4
  51. package/blog/it/intlayer_with_next-intl.md +8 -4
  52. package/blog/it/intlayer_with_react-i18next.md +8 -4
  53. package/blog/it/intlayer_with_react-intl.md +8 -4
  54. package/blog/it/intlayer_with_vue-i18n.md +8 -4
  55. package/blog/ja/intlayer_with_i18next.md +8 -4
  56. package/blog/ja/intlayer_with_next-i18next.md +8 -4
  57. package/blog/ja/intlayer_with_next-intl.md +8 -4
  58. package/blog/ja/intlayer_with_react-i18next.md +8 -4
  59. package/blog/ja/intlayer_with_react-intl.md +8 -4
  60. package/blog/ja/intlayer_with_vue-i18n.md +8 -4
  61. package/blog/ko/intlayer_with_i18next.md +8 -4
  62. package/blog/ko/intlayer_with_next-i18next.md +8 -4
  63. package/blog/ko/intlayer_with_next-intl.md +8 -4
  64. package/blog/ko/intlayer_with_react-i18next.md +8 -4
  65. package/blog/ko/intlayer_with_react-intl.md +8 -4
  66. package/blog/ko/intlayer_with_vue-i18n.md +8 -4
  67. package/blog/pl/intlayer_with_i18next.md +8 -4
  68. package/blog/pl/intlayer_with_next-i18next.md +8 -4
  69. package/blog/pl/intlayer_with_next-intl.md +8 -4
  70. package/blog/pl/intlayer_with_react-i18next.md +8 -4
  71. package/blog/pl/intlayer_with_react-intl.md +8 -4
  72. package/blog/pl/intlayer_with_vue-i18n.md +8 -4
  73. package/blog/pt/intlayer_with_i18next.md +8 -4
  74. package/blog/pt/intlayer_with_next-i18next.md +8 -4
  75. package/blog/pt/intlayer_with_next-intl.md +8 -4
  76. package/blog/pt/intlayer_with_react-i18next.md +8 -4
  77. package/blog/pt/intlayer_with_react-intl.md +8 -4
  78. package/blog/pt/intlayer_with_vue-i18n.md +8 -4
  79. package/blog/ru/intlayer_with_i18next.md +8 -4
  80. package/blog/ru/intlayer_with_next-i18next.md +8 -4
  81. package/blog/ru/intlayer_with_next-intl.md +8 -4
  82. package/blog/ru/intlayer_with_react-i18next.md +8 -4
  83. package/blog/ru/intlayer_with_react-intl.md +8 -4
  84. package/blog/ru/intlayer_with_vue-i18n.md +8 -4
  85. package/blog/tr/intlayer_with_i18next.md +8 -4
  86. package/blog/tr/intlayer_with_next-i18next.md +8 -4
  87. package/blog/tr/intlayer_with_next-intl.md +8 -4
  88. package/blog/tr/intlayer_with_react-i18next.md +8 -4
  89. package/blog/tr/intlayer_with_react-intl.md +8 -4
  90. package/blog/tr/intlayer_with_vue-i18n.md +8 -4
  91. package/blog/vi/intlayer_with_i18next.md +8 -4
  92. package/blog/vi/intlayer_with_next-i18next.md +8 -4
  93. package/blog/vi/intlayer_with_next-intl.md +8 -4
  94. package/blog/vi/intlayer_with_react-i18next.md +8 -4
  95. package/blog/vi/intlayer_with_react-intl.md +8 -4
  96. package/blog/vi/intlayer_with_vue-i18n.md +8 -4
  97. package/blog/zh/intlayer_with_i18next.md +8 -4
  98. package/blog/zh/intlayer_with_next-i18next.md +8 -4
  99. package/blog/zh/intlayer_with_next-intl.md +8 -4
  100. package/blog/zh/intlayer_with_react-i18next.md +8 -4
  101. package/blog/zh/intlayer_with_react-intl.md +8 -4
  102. package/blog/zh/intlayer_with_vue-i18n.md +8 -4
  103. package/docs/ar/cli/index.md +4 -0
  104. package/docs/ar/cli/sdk.md +4 -0
  105. package/docs/ar/intlayer_visual_editor.md +4 -0
  106. package/docs/ar/intlayer_with_angular.md +8 -0
  107. package/docs/ar/intlayer_with_create_react_app.md +8 -0
  108. package/docs/ar/intlayer_with_express.md +8 -0
  109. package/docs/ar/intlayer_with_lynx+react.md +8 -0
  110. package/docs/ar/intlayer_with_nestjs.md +8 -0
  111. package/docs/ar/intlayer_with_next-i18next.md +15 -3
  112. package/docs/ar/intlayer_with_next-intl.md +12 -3
  113. package/docs/ar/intlayer_with_nextjs_14.md +16 -0
  114. package/docs/ar/intlayer_with_nextjs_15.md +16 -0
  115. package/docs/ar/intlayer_with_nextjs_16.md +16 -0
  116. package/docs/ar/intlayer_with_nextjs_page_router.md +16 -0
  117. package/docs/ar/intlayer_with_nuxt.md +9 -0
  118. package/docs/ar/intlayer_with_react_native+expo.md +9 -0
  119. package/docs/ar/intlayer_with_react_router_v7.md +86 -16
  120. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +16 -0
  121. package/docs/ar/intlayer_with_svelte_kit.md +8 -0
  122. package/docs/ar/intlayer_with_tanstack.md +14 -0
  123. package/docs/ar/intlayer_with_vite+preact.md +12 -2
  124. package/docs/ar/intlayer_with_vite+react.md +9 -0
  125. package/docs/ar/intlayer_with_vite+solid.md +9 -0
  126. package/docs/ar/intlayer_with_vite+svelte.md +7 -0
  127. package/docs/ar/intlayer_with_vite+vue.md +11 -0
  128. package/docs/de/cli/index.md +4 -0
  129. package/docs/de/cli/sdk.md +4 -0
  130. package/docs/de/intlayer_visual_editor.md +4 -0
  131. package/docs/de/intlayer_with_angular.md +8 -0
  132. package/docs/de/intlayer_with_create_react_app.md +8 -0
  133. package/docs/de/intlayer_with_express.md +8 -0
  134. package/docs/de/intlayer_with_lynx+react.md +8 -0
  135. package/docs/de/intlayer_with_nestjs.md +8 -0
  136. package/docs/de/intlayer_with_next-i18next.md +15 -3
  137. package/docs/de/intlayer_with_next-intl.md +12 -3
  138. package/docs/de/intlayer_with_nextjs_14.md +16 -0
  139. package/docs/de/intlayer_with_nextjs_15.md +16 -0
  140. package/docs/de/intlayer_with_nextjs_16.md +16 -0
  141. package/docs/de/intlayer_with_nextjs_page_router.md +16 -0
  142. package/docs/de/intlayer_with_nuxt.md +9 -0
  143. package/docs/de/intlayer_with_react_native+expo.md +1 -0
  144. package/docs/de/intlayer_with_react_router_v7.md +86 -15
  145. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +103 -19
  146. package/docs/de/intlayer_with_svelte_kit.md +8 -0
  147. package/docs/de/intlayer_with_tanstack.md +14 -0
  148. package/docs/de/intlayer_with_vite+preact.md +12 -2
  149. package/docs/de/intlayer_with_vite+react.md +9 -0
  150. package/docs/de/intlayer_with_vite+solid.md +9 -0
  151. package/docs/de/intlayer_with_vite+svelte.md +6 -0
  152. package/docs/de/intlayer_with_vite+vue.md +11 -0
  153. package/docs/en/cli/index.md +4 -0
  154. package/docs/en/cli/sdk.md +4 -0
  155. package/docs/en/configuration.md +1 -0
  156. package/docs/en/intlayer_visual_editor.md +4 -0
  157. package/docs/en/intlayer_with_angular.md +8 -0
  158. package/docs/en/intlayer_with_create_react_app.md +8 -0
  159. package/docs/en/intlayer_with_express.md +8 -0
  160. package/docs/en/intlayer_with_lynx+react.md +8 -0
  161. package/docs/en/intlayer_with_nestjs.md +8 -0
  162. package/docs/en/intlayer_with_next-i18next.md +15 -3
  163. package/docs/en/intlayer_with_next-intl.md +12 -3
  164. package/docs/en/intlayer_with_nextjs_14.md +16 -0
  165. package/docs/en/intlayer_with_nextjs_15.md +16 -0
  166. package/docs/en/intlayer_with_nextjs_16.md +16 -0
  167. package/docs/en/intlayer_with_nextjs_page_router.md +16 -0
  168. package/docs/en/intlayer_with_nuxt.md +9 -0
  169. package/docs/en/intlayer_with_react_native+expo.md +9 -0
  170. package/docs/en/intlayer_with_react_router_v7.md +88 -15
  171. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +106 -19
  172. package/docs/en/intlayer_with_svelte_kit.md +4 -0
  173. package/docs/en/intlayer_with_tanstack.md +14 -0
  174. package/docs/en/intlayer_with_vite+preact.md +11 -0
  175. package/docs/en/intlayer_with_vite+react.md +9 -0
  176. package/docs/en/intlayer_with_vite+solid.md +9 -0
  177. package/docs/en/intlayer_with_vite+svelte.md +7 -0
  178. package/docs/en/intlayer_with_vite+vue.md +11 -0
  179. package/docs/en-GB/cli/index.md +4 -0
  180. package/docs/en-GB/cli/sdk.md +4 -0
  181. package/docs/en-GB/configuration.md +1 -0
  182. package/docs/en-GB/intlayer_visual_editor.md +4 -0
  183. package/docs/en-GB/intlayer_with_angular.md +8 -0
  184. package/docs/en-GB/intlayer_with_create_react_app.md +16 -0
  185. package/docs/en-GB/intlayer_with_express.md +8 -0
  186. package/docs/en-GB/intlayer_with_lynx+react.md +16 -0
  187. package/docs/en-GB/intlayer_with_nestjs.md +8 -0
  188. package/docs/en-GB/intlayer_with_next-i18next.md +15 -3
  189. package/docs/en-GB/intlayer_with_next-intl.md +12 -3
  190. package/docs/en-GB/intlayer_with_nextjs_14.md +16 -0
  191. package/docs/en-GB/intlayer_with_nextjs_15.md +16 -0
  192. package/docs/en-GB/intlayer_with_nextjs_16.md +16 -0
  193. package/docs/en-GB/intlayer_with_nextjs_page_router.md +16 -0
  194. package/docs/en-GB/intlayer_with_nuxt.md +9 -0
  195. package/docs/en-GB/intlayer_with_react_native+expo.md +9 -0
  196. package/docs/en-GB/intlayer_with_react_router_v7.md +87 -16
  197. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +16 -0
  198. package/docs/en-GB/intlayer_with_svelte_kit.md +8 -0
  199. package/docs/en-GB/intlayer_with_tanstack.md +14 -0
  200. package/docs/en-GB/intlayer_with_vite+preact.md +12 -2
  201. package/docs/en-GB/intlayer_with_vite+react.md +9 -0
  202. package/docs/en-GB/intlayer_with_vite+solid.md +9 -0
  203. package/docs/en-GB/intlayer_with_vite+svelte.md +7 -0
  204. package/docs/en-GB/intlayer_with_vite+vue.md +11 -0
  205. package/docs/es/cli/index.md +4 -0
  206. package/docs/es/cli/sdk.md +4 -0
  207. package/docs/es/intlayer_visual_editor.md +4 -0
  208. package/docs/es/intlayer_with_angular.md +8 -0
  209. package/docs/es/intlayer_with_create_react_app.md +8 -0
  210. package/docs/es/intlayer_with_express.md +8 -0
  211. package/docs/es/intlayer_with_lynx+react.md +8 -0
  212. package/docs/es/intlayer_with_nestjs.md +8 -0
  213. package/docs/es/intlayer_with_next-i18next.md +15 -3
  214. package/docs/es/intlayer_with_next-intl.md +12 -3
  215. package/docs/es/intlayer_with_nextjs_14.md +16 -0
  216. package/docs/es/intlayer_with_nextjs_15.md +16 -0
  217. package/docs/es/intlayer_with_nextjs_16.md +16 -0
  218. package/docs/es/intlayer_with_nextjs_page_router.md +16 -0
  219. package/docs/es/intlayer_with_nuxt.md +9 -0
  220. package/docs/es/intlayer_with_react_native+expo.md +9 -0
  221. package/docs/es/intlayer_with_react_router_v7.md +86 -15
  222. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +103 -19
  223. package/docs/es/intlayer_with_svelte_kit.md +8 -0
  224. package/docs/es/intlayer_with_tanstack.md +14 -0
  225. package/docs/es/intlayer_with_vite+preact.md +12 -2
  226. package/docs/es/intlayer_with_vite+react.md +9 -0
  227. package/docs/es/intlayer_with_vite+solid.md +9 -0
  228. package/docs/es/intlayer_with_vite+svelte.md +7 -0
  229. package/docs/es/intlayer_with_vite+vue.md +11 -0
  230. package/docs/es/packages/next-intlayer/index.md +5 -0
  231. package/docs/es/packages/react-intlayer/index.md +5 -0
  232. package/docs/fr/cli/index.md +4 -0
  233. package/docs/fr/cli/sdk.md +4 -0
  234. package/docs/fr/intlayer_visual_editor.md +4 -0
  235. package/docs/fr/intlayer_with_angular.md +8 -0
  236. package/docs/fr/intlayer_with_create_react_app.md +8 -0
  237. package/docs/fr/intlayer_with_express.md +8 -0
  238. package/docs/fr/intlayer_with_lynx+react.md +8 -0
  239. package/docs/fr/intlayer_with_nestjs.md +8 -0
  240. package/docs/fr/intlayer_with_next-i18next.md +15 -3
  241. package/docs/fr/intlayer_with_next-intl.md +12 -3
  242. package/docs/fr/intlayer_with_nextjs_14.md +16 -0
  243. package/docs/fr/intlayer_with_nextjs_15.md +16 -0
  244. package/docs/fr/intlayer_with_nextjs_16.md +16 -0
  245. package/docs/fr/intlayer_with_nextjs_page_router.md +16 -0
  246. package/docs/fr/intlayer_with_nuxt.md +9 -0
  247. package/docs/fr/intlayer_with_react_native+expo.md +1 -0
  248. package/docs/fr/intlayer_with_react_router_v7.md +86 -15
  249. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +103 -19
  250. package/docs/fr/intlayer_with_svelte_kit.md +8 -0
  251. package/docs/fr/intlayer_with_tanstack.md +14 -0
  252. package/docs/fr/intlayer_with_vite+preact.md +12 -2
  253. package/docs/fr/intlayer_with_vite+react.md +9 -0
  254. package/docs/fr/intlayer_with_vite+solid.md +9 -0
  255. package/docs/fr/intlayer_with_vite+svelte.md +7 -0
  256. package/docs/fr/intlayer_with_vite+vue.md +11 -0
  257. package/docs/fr/packages/react-intlayer/index.md +5 -0
  258. package/docs/hi/cli/index.md +4 -0
  259. package/docs/hi/cli/sdk.md +4 -0
  260. package/docs/hi/intlayer_visual_editor.md +4 -0
  261. package/docs/hi/intlayer_with_angular.md +8 -0
  262. package/docs/hi/intlayer_with_create_react_app.md +8 -0
  263. package/docs/hi/intlayer_with_express.md +8 -0
  264. package/docs/hi/intlayer_with_lynx+react.md +8 -0
  265. package/docs/hi/intlayer_with_nestjs.md +8 -0
  266. package/docs/hi/intlayer_with_next-i18next.md +15 -3
  267. package/docs/hi/intlayer_with_next-intl.md +12 -3
  268. package/docs/hi/intlayer_with_nextjs_14.md +16 -0
  269. package/docs/hi/intlayer_with_nextjs_15.md +16 -0
  270. package/docs/hi/intlayer_with_nextjs_16.md +16 -0
  271. package/docs/hi/intlayer_with_nextjs_page_router.md +16 -0
  272. package/docs/hi/intlayer_with_nuxt.md +9 -0
  273. package/docs/hi/intlayer_with_react_native+expo.md +1 -0
  274. package/docs/hi/intlayer_with_react_router_v7.md +86 -16
  275. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +16 -0
  276. package/docs/hi/intlayer_with_svelte_kit.md +8 -0
  277. package/docs/hi/intlayer_with_tanstack.md +14 -0
  278. package/docs/hi/intlayer_with_vite+preact.md +12 -2
  279. package/docs/hi/intlayer_with_vite+react.md +9 -0
  280. package/docs/hi/intlayer_with_vite+solid.md +9 -0
  281. package/docs/hi/intlayer_with_vite+svelte.md +7 -0
  282. package/docs/hi/intlayer_with_vite+vue.md +11 -0
  283. package/docs/hi/packages/intlayer/index.md +8 -0
  284. package/docs/id/cli/index.md +4 -0
  285. package/docs/id/cli/sdk.md +4 -0
  286. package/docs/id/intlayer_visual_editor.md +4 -0
  287. package/docs/id/intlayer_with_angular.md +8 -0
  288. package/docs/id/intlayer_with_create_react_app.md +8 -0
  289. package/docs/id/intlayer_with_express.md +8 -0
  290. package/docs/id/intlayer_with_lynx+react.md +8 -0
  291. package/docs/id/intlayer_with_nestjs.md +8 -0
  292. package/docs/id/intlayer_with_next-i18next.md +15 -3
  293. package/docs/id/intlayer_with_next-intl.md +12 -3
  294. package/docs/id/intlayer_with_nextjs_14.md +16 -0
  295. package/docs/id/intlayer_with_nextjs_15.md +16 -0
  296. package/docs/id/intlayer_with_nextjs_16.md +16 -0
  297. package/docs/id/intlayer_with_nextjs_page_router.md +16 -0
  298. package/docs/id/intlayer_with_nuxt.md +9 -0
  299. package/docs/id/intlayer_with_react_native+expo.md +9 -0
  300. package/docs/id/intlayer_with_react_router_v7.md +86 -15
  301. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +16 -0
  302. package/docs/id/intlayer_with_svelte_kit.md +8 -0
  303. package/docs/id/intlayer_with_tanstack.md +14 -0
  304. package/docs/id/intlayer_with_vite+preact.md +11 -0
  305. package/docs/id/intlayer_with_vite+react.md +9 -0
  306. package/docs/id/intlayer_with_vite+solid.md +9 -0
  307. package/docs/id/intlayer_with_vite+svelte.md +7 -0
  308. package/docs/id/intlayer_with_vite+vue.md +11 -0
  309. package/docs/it/cli/index.md +4 -0
  310. package/docs/it/cli/sdk.md +4 -0
  311. package/docs/it/intlayer_visual_editor.md +4 -0
  312. package/docs/it/intlayer_with_angular.md +8 -0
  313. package/docs/it/intlayer_with_create_react_app.md +8 -0
  314. package/docs/it/intlayer_with_express.md +8 -0
  315. package/docs/it/intlayer_with_lynx+react.md +8 -0
  316. package/docs/it/intlayer_with_nestjs.md +8 -0
  317. package/docs/it/intlayer_with_next-i18next.md +15 -3
  318. package/docs/it/intlayer_with_next-intl.md +12 -3
  319. package/docs/it/intlayer_with_nextjs_14.md +16 -0
  320. package/docs/it/intlayer_with_nextjs_15.md +16 -0
  321. package/docs/it/intlayer_with_nextjs_16.md +16 -0
  322. package/docs/it/intlayer_with_nextjs_page_router.md +16 -0
  323. package/docs/it/intlayer_with_nuxt.md +9 -0
  324. package/docs/it/intlayer_with_react_native+expo.md +9 -0
  325. package/docs/it/intlayer_with_react_router_v7.md +86 -15
  326. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +103 -19
  327. package/docs/it/intlayer_with_svelte_kit.md +8 -0
  328. package/docs/it/intlayer_with_tanstack.md +14 -0
  329. package/docs/it/intlayer_with_vite+preact.md +12 -2
  330. package/docs/it/intlayer_with_vite+react.md +9 -0
  331. package/docs/it/intlayer_with_vite+solid.md +9 -0
  332. package/docs/it/intlayer_with_vite+svelte.md +7 -0
  333. package/docs/it/intlayer_with_vite+vue.md +11 -0
  334. package/docs/ja/cli/index.md +4 -0
  335. package/docs/ja/cli/sdk.md +4 -0
  336. package/docs/ja/intlayer_visual_editor.md +4 -0
  337. package/docs/ja/intlayer_with_angular.md +8 -0
  338. package/docs/ja/intlayer_with_create_react_app.md +8 -0
  339. package/docs/ja/intlayer_with_express.md +8 -0
  340. package/docs/ja/intlayer_with_lynx+react.md +8 -0
  341. package/docs/ja/intlayer_with_nestjs.md +8 -0
  342. package/docs/ja/intlayer_with_next-i18next.md +15 -3
  343. package/docs/ja/intlayer_with_next-intl.md +12 -3
  344. package/docs/ja/intlayer_with_nextjs_14.md +16 -0
  345. package/docs/ja/intlayer_with_nextjs_15.md +16 -0
  346. package/docs/ja/intlayer_with_nextjs_16.md +16 -0
  347. package/docs/ja/intlayer_with_nextjs_page_router.md +16 -0
  348. package/docs/ja/intlayer_with_nuxt.md +9 -0
  349. package/docs/ja/intlayer_with_react_native+expo.md +1 -0
  350. package/docs/ja/intlayer_with_react_router_v7.md +86 -15
  351. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +103 -19
  352. package/docs/ja/intlayer_with_svelte_kit.md +8 -0
  353. package/docs/ja/intlayer_with_tanstack.md +14 -0
  354. package/docs/ja/intlayer_with_vite+preact.md +12 -2
  355. package/docs/ja/intlayer_with_vite+react.md +9 -0
  356. package/docs/ja/intlayer_with_vite+solid.md +9 -0
  357. package/docs/ja/intlayer_with_vite+svelte.md +7 -0
  358. package/docs/ja/intlayer_with_vite+vue.md +11 -0
  359. package/docs/ko/cli/index.md +4 -0
  360. package/docs/ko/cli/sdk.md +4 -0
  361. package/docs/ko/intlayer_visual_editor.md +4 -0
  362. package/docs/ko/intlayer_with_angular.md +8 -0
  363. package/docs/ko/intlayer_with_create_react_app.md +8 -0
  364. package/docs/ko/intlayer_with_express.md +8 -0
  365. package/docs/ko/intlayer_with_lynx+react.md +8 -0
  366. package/docs/ko/intlayer_with_nestjs.md +8 -0
  367. package/docs/ko/intlayer_with_next-i18next.md +15 -3
  368. package/docs/ko/intlayer_with_next-intl.md +12 -3
  369. package/docs/ko/intlayer_with_nextjs_14.md +13 -0
  370. package/docs/ko/intlayer_with_nextjs_15.md +16 -0
  371. package/docs/ko/intlayer_with_nextjs_16.md +16 -0
  372. package/docs/ko/intlayer_with_nextjs_page_router.md +16 -0
  373. package/docs/ko/intlayer_with_nuxt.md +9 -0
  374. package/docs/ko/intlayer_with_react_native+expo.md +9 -0
  375. package/docs/ko/intlayer_with_react_router_v7.md +86 -15
  376. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +16 -0
  377. package/docs/ko/intlayer_with_svelte_kit.md +8 -0
  378. package/docs/ko/intlayer_with_tanstack.md +14 -0
  379. package/docs/ko/intlayer_with_vite+preact.md +12 -2
  380. package/docs/ko/intlayer_with_vite+react.md +9 -0
  381. package/docs/ko/intlayer_with_vite+solid.md +9 -0
  382. package/docs/ko/intlayer_with_vite+svelte.md +7 -0
  383. package/docs/ko/intlayer_with_vite+vue.md +11 -0
  384. package/docs/pl/cli/index.md +4 -0
  385. package/docs/pl/cli/sdk.md +4 -0
  386. package/docs/pl/intlayer_visual_editor.md +4 -0
  387. package/docs/pl/intlayer_with_angular.md +8 -0
  388. package/docs/pl/intlayer_with_create_react_app.md +8 -0
  389. package/docs/pl/intlayer_with_express.md +8 -0
  390. package/docs/pl/intlayer_with_lynx+react.md +8 -0
  391. package/docs/pl/intlayer_with_nestjs.md +8 -0
  392. package/docs/pl/intlayer_with_next-i18next.md +15 -3
  393. package/docs/pl/intlayer_with_next-intl.md +12 -3
  394. package/docs/pl/intlayer_with_nextjs_14.md +16 -0
  395. package/docs/pl/intlayer_with_nextjs_15.md +16 -0
  396. package/docs/pl/intlayer_with_nextjs_16.md +16 -0
  397. package/docs/pl/intlayer_with_nextjs_page_router.md +16 -0
  398. package/docs/pl/intlayer_with_nuxt.md +9 -0
  399. package/docs/pl/intlayer_with_react_native+expo.md +9 -0
  400. package/docs/pl/intlayer_with_react_router_v7.md +59 -13
  401. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +102 -18
  402. package/docs/pl/intlayer_with_svelte_kit.md +8 -0
  403. package/docs/pl/intlayer_with_tanstack.md +14 -0
  404. package/docs/pl/intlayer_with_vite+preact.md +11 -0
  405. package/docs/pl/intlayer_with_vite+react.md +9 -0
  406. package/docs/pl/intlayer_with_vite+solid.md +9 -0
  407. package/docs/pl/intlayer_with_vite+svelte.md +7 -0
  408. package/docs/pl/intlayer_with_vite+vue.md +11 -0
  409. package/docs/pt/cli/index.md +4 -0
  410. package/docs/pt/cli/sdk.md +4 -0
  411. package/docs/pt/intlayer_visual_editor.md +4 -0
  412. package/docs/pt/intlayer_with_angular.md +8 -0
  413. package/docs/pt/intlayer_with_create_react_app.md +8 -0
  414. package/docs/pt/intlayer_with_express.md +8 -0
  415. package/docs/pt/intlayer_with_lynx+react.md +8 -0
  416. package/docs/pt/intlayer_with_nestjs.md +8 -0
  417. package/docs/pt/intlayer_with_next-i18next.md +15 -3
  418. package/docs/pt/intlayer_with_next-intl.md +12 -3
  419. package/docs/pt/intlayer_with_nextjs_14.md +16 -0
  420. package/docs/pt/intlayer_with_nextjs_15.md +16 -0
  421. package/docs/pt/intlayer_with_nextjs_16.md +16 -0
  422. package/docs/pt/intlayer_with_nextjs_page_router.md +16 -0
  423. package/docs/pt/intlayer_with_nuxt.md +9 -0
  424. package/docs/pt/intlayer_with_react_native+expo.md +9 -0
  425. package/docs/pt/intlayer_with_react_router_v7.md +93 -46
  426. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +103 -19
  427. package/docs/pt/intlayer_with_svelte_kit.md +8 -0
  428. package/docs/pt/intlayer_with_tanstack.md +14 -0
  429. package/docs/pt/intlayer_with_vite+preact.md +12 -2
  430. package/docs/pt/intlayer_with_vite+react.md +9 -0
  431. package/docs/pt/intlayer_with_vite+solid.md +9 -0
  432. package/docs/pt/intlayer_with_vite+svelte.md +7 -0
  433. package/docs/pt/intlayer_with_vite+vue.md +11 -0
  434. package/docs/ru/cli/index.md +4 -0
  435. package/docs/ru/cli/sdk.md +4 -0
  436. package/docs/ru/intlayer_visual_editor.md +4 -0
  437. package/docs/ru/intlayer_with_angular.md +8 -0
  438. package/docs/ru/intlayer_with_create_react_app.md +8 -0
  439. package/docs/ru/intlayer_with_express.md +8 -0
  440. package/docs/ru/intlayer_with_lynx+react.md +8 -0
  441. package/docs/ru/intlayer_with_nestjs.md +8 -0
  442. package/docs/ru/intlayer_with_next-i18next.md +15 -3
  443. package/docs/ru/intlayer_with_next-intl.md +12 -3
  444. package/docs/ru/intlayer_with_nextjs_14.md +16 -0
  445. package/docs/ru/intlayer_with_nextjs_15.md +16 -0
  446. package/docs/ru/intlayer_with_nextjs_16.md +16 -0
  447. package/docs/ru/intlayer_with_nextjs_page_router.md +16 -0
  448. package/docs/ru/intlayer_with_nuxt.md +9 -0
  449. package/docs/ru/intlayer_with_react_native+expo.md +9 -0
  450. package/docs/ru/intlayer_with_react_router_v7.md +86 -15
  451. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +103 -19
  452. package/docs/ru/intlayer_with_svelte_kit.md +8 -0
  453. package/docs/ru/intlayer_with_tanstack.md +14 -0
  454. package/docs/ru/intlayer_with_vite+preact.md +12 -2
  455. package/docs/ru/intlayer_with_vite+react.md +9 -0
  456. package/docs/ru/intlayer_with_vite+solid.md +9 -0
  457. package/docs/ru/intlayer_with_vite+svelte.md +7 -0
  458. package/docs/ru/intlayer_with_vite+vue.md +11 -0
  459. package/docs/tr/cli/index.md +4 -0
  460. package/docs/tr/cli/sdk.md +4 -0
  461. package/docs/tr/intlayer_visual_editor.md +4 -0
  462. package/docs/tr/intlayer_with_angular.md +8 -0
  463. package/docs/tr/intlayer_with_create_react_app.md +8 -0
  464. package/docs/tr/intlayer_with_express.md +8 -0
  465. package/docs/tr/intlayer_with_lynx+react.md +8 -0
  466. package/docs/tr/intlayer_with_nestjs.md +8 -0
  467. package/docs/tr/intlayer_with_next-i18next.md +15 -3
  468. package/docs/tr/intlayer_with_next-intl.md +12 -3
  469. package/docs/tr/intlayer_with_nextjs_14.md +16 -0
  470. package/docs/tr/intlayer_with_nextjs_15.md +16 -0
  471. package/docs/tr/intlayer_with_nextjs_16.md +16 -0
  472. package/docs/tr/intlayer_with_nextjs_page_router.md +16 -0
  473. package/docs/tr/intlayer_with_nuxt.md +9 -0
  474. package/docs/tr/intlayer_with_react_native+expo.md +9 -0
  475. package/docs/tr/intlayer_with_react_router_v7.md +86 -15
  476. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +103 -19
  477. package/docs/tr/intlayer_with_svelte_kit.md +8 -0
  478. package/docs/tr/intlayer_with_tanstack.md +14 -0
  479. package/docs/tr/intlayer_with_vite+preact.md +12 -2
  480. package/docs/tr/intlayer_with_vite+react.md +9 -0
  481. package/docs/tr/intlayer_with_vite+solid.md +9 -0
  482. package/docs/tr/intlayer_with_vite+svelte.md +7 -0
  483. package/docs/tr/intlayer_with_vite+vue.md +11 -0
  484. package/docs/vi/cli/index.md +5 -0
  485. package/docs/vi/cli/sdk.md +4 -0
  486. package/docs/vi/intlayer_visual_editor.md +4 -0
  487. package/docs/vi/intlayer_with_angular.md +8 -0
  488. package/docs/vi/intlayer_with_create_react_app.md +8 -0
  489. package/docs/vi/intlayer_with_express.md +8 -0
  490. package/docs/vi/intlayer_with_lynx+react.md +8 -0
  491. package/docs/vi/intlayer_with_nestjs.md +8 -0
  492. package/docs/vi/intlayer_with_next-i18next.md +15 -3
  493. package/docs/vi/intlayer_with_next-intl.md +12 -3
  494. package/docs/vi/intlayer_with_nextjs_14.md +16 -0
  495. package/docs/vi/intlayer_with_nextjs_15.md +16 -0
  496. package/docs/vi/intlayer_with_nextjs_16.md +16 -0
  497. package/docs/vi/intlayer_with_nextjs_page_router.md +16 -0
  498. package/docs/vi/intlayer_with_nuxt.md +9 -0
  499. package/docs/vi/intlayer_with_react_native+expo.md +9 -0
  500. package/docs/vi/intlayer_with_react_router_v7.md +86 -15
  501. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +16 -0
  502. package/docs/vi/intlayer_with_svelte_kit.md +8 -0
  503. package/docs/vi/intlayer_with_tanstack.md +14 -0
  504. package/docs/vi/intlayer_with_vite+preact.md +11 -0
  505. package/docs/vi/intlayer_with_vite+react.md +9 -0
  506. package/docs/vi/intlayer_with_vite+solid.md +9 -0
  507. package/docs/vi/intlayer_with_vite+svelte.md +7 -0
  508. package/docs/vi/intlayer_with_vite+vue.md +11 -0
  509. package/docs/zh/cli/index.md +4 -0
  510. package/docs/zh/cli/sdk.md +4 -0
  511. package/docs/zh/intlayer_visual_editor.md +4 -0
  512. package/docs/zh/intlayer_with_angular.md +8 -0
  513. package/docs/zh/intlayer_with_create_react_app.md +8 -0
  514. package/docs/zh/intlayer_with_express.md +8 -0
  515. package/docs/zh/intlayer_with_lynx+react.md +8 -0
  516. package/docs/zh/intlayer_with_nestjs.md +8 -0
  517. package/docs/zh/intlayer_with_next-i18next.md +15 -3
  518. package/docs/zh/intlayer_with_next-intl.md +12 -3
  519. package/docs/zh/intlayer_with_nextjs_14.md +16 -0
  520. package/docs/zh/intlayer_with_nextjs_15.md +16 -0
  521. package/docs/zh/intlayer_with_nextjs_16.md +16 -0
  522. package/docs/zh/intlayer_with_nextjs_page_router.md +16 -0
  523. package/docs/zh/intlayer_with_nuxt.md +9 -0
  524. package/docs/zh/intlayer_with_react_native+expo.md +9 -0
  525. package/docs/zh/intlayer_with_react_router_v7.md +86 -15
  526. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +16 -0
  527. package/docs/zh/intlayer_with_svelte_kit.md +8 -0
  528. package/docs/zh/intlayer_with_tanstack.md +14 -0
  529. package/docs/zh/intlayer_with_vite+preact.md +12 -2
  530. package/docs/zh/intlayer_with_vite+react.md +9 -0
  531. package/docs/zh/intlayer_with_vite+solid.md +9 -0
  532. package/docs/zh/intlayer_with_vite+svelte.md +7 -0
  533. package/docs/zh/intlayer_with_vite+vue.md +11 -0
  534. package/package.json +6 -6
@@ -46,14 +46,22 @@ Instale os pacotes necessários usando npm:
46
46
 
47
47
  ```bash packageManager="npm"
48
48
  npm install intlayer next-intlayer
49
+ npx intlayer init
49
50
  ```
50
51
 
51
52
  ```bash packageManager="pnpm"
52
53
  pnpm add intlayer next-intlayer
54
+ pnpm intlayer init
53
55
  ```
54
56
 
55
57
  ```bash packageManager="yarn"
56
58
  yarn add intlayer next-intlayer
59
+ yarn intlayer init
60
+ ```
61
+
62
+ ```bash packageManager="bun"
63
+ bun add intlayer next-intlayer
64
+ bunx intlayer init
57
65
  ```
58
66
 
59
67
  - **intlayer**
@@ -1231,14 +1239,22 @@ Para habilitar essa otimização, instale o pacote `@intlayer/swc`. Uma vez inst
1231
1239
 
1232
1240
  ```bash packageManager="npm"
1233
1241
  npm install @intlayer/swc --save-dev
1242
+ npx intlayer init
1234
1243
  ```
1235
1244
 
1236
1245
  ```bash packageManager="pnpm"
1237
1246
  pnpm add @intlayer/swc --save-dev
1247
+ pnpm intlayer init
1238
1248
  ```
1239
1249
 
1240
1250
  ```bash packageManager="yarn"
1241
1251
  yarn add @intlayer/swc --save-dev
1252
+ yarn intlayer init
1253
+ ```
1254
+
1255
+ ```bash packageManager="bun"
1256
+ bun add @intlayer/swc --dev
1257
+ bunx intlayer init
1242
1258
  ```
1243
1259
 
1244
1260
  > Nota: Esta otimização só está disponível em Next.js 13 e superior.
@@ -53,14 +53,22 @@ Instale os pacotes necessários usando npm:
53
53
 
54
54
  ```bash packageManager="npm"
55
55
  npm install intlayer next-intlayer
56
+ npx intlayer init
56
57
  ```
57
58
 
58
59
  ```bash packageManager="pnpm"
59
60
  pnpm add intlayer next-intlayer
61
+ pnpm intlayer init
60
62
  ```
61
63
 
62
64
  ```bash packageManager="yarn"
63
65
  yarn add intlayer next-intlayer
66
+ yarn intlayer init
67
+ ```
68
+
69
+ ```bash packageManager="bun"
70
+ bun add intlayer next-intlayer
71
+ bunx intlayer init
64
72
  ```
65
73
 
66
74
  - **intlayer**
@@ -1482,14 +1490,22 @@ Para habilitar essa otimização, instale o pacote `@intlayer/swc`. Uma vez inst
1482
1490
 
1483
1491
  ```bash packageManager="npm"
1484
1492
  npm install @intlayer/swc --save-dev
1493
+ npx intlayer init
1485
1494
  ```
1486
1495
 
1487
1496
  ```bash packageManager="pnpm"
1488
1497
  pnpm add @intlayer/swc --save-dev
1498
+ pnpm intlayer init
1489
1499
  ```
1490
1500
 
1491
1501
  ```bash packageManager="yarn"
1492
1502
  yarn add @intlayer/swc --save-dev
1503
+ yarn intlayer init
1504
+ ```
1505
+
1506
+ ```bash packageManager="bun"
1507
+ bun add @intlayer/swc --dev
1508
+ bunx intlayer init
1493
1509
  ```
1494
1510
 
1495
1511
  > Nota: Esta otimização está disponível apenas para Next.js 13 e versões superiores.
@@ -73,14 +73,22 @@ Instale os pacotes necessários usando npm:
73
73
 
74
74
  ```bash packageManager="npm"
75
75
  npm install intlayer next-intlayer
76
+ npx intlayer init
76
77
  ```
77
78
 
78
79
  ```bash packageManager="pnpm"
79
80
  pnpm add intlayer next-intlayer
81
+ pnpm intlayer init
80
82
  ```
81
83
 
82
84
  ```bash packageManager="yarn"
83
85
  yarn add intlayer next-intlayer
86
+ yarn intlayer init
87
+ ```
88
+
89
+ ```bash packageManager="bun"
90
+ bun add intlayer next-intlayer
91
+ bunx intlayer init
84
92
  ```
85
93
 
86
94
  - **intlayer**
@@ -1564,14 +1572,22 @@ Para ativar essa otimização, instale o pacote `@intlayer/swc`. Uma vez instala
1564
1572
 
1565
1573
  ```bash packageManager="npm"
1566
1574
  npm install @intlayer/swc --save-dev
1575
+ npx intlayer init
1567
1576
  ```
1568
1577
 
1569
1578
  ```bash packageManager="pnpm"
1570
1579
  pnpm add @intlayer/swc --save-dev
1580
+ pnpm intlayer init
1571
1581
  ```
1572
1582
 
1573
1583
  ```bash packageManager="yarn"
1574
1584
  yarn add @intlayer/swc --save-dev
1585
+ yarn intlayer init
1586
+ ```
1587
+
1588
+ ```bash packageManager="bun"
1589
+ bun add @intlayer/swc --dev
1590
+ bunx intlayer init
1575
1591
  ```
1576
1592
 
1577
1593
  > Nota: Esta otimização está disponível apenas para Next.js 13 ou superior.
@@ -47,14 +47,22 @@ Instale os pacotes necessários usando seu gerenciador de pacotes preferido:
47
47
 
48
48
  ```bash packageManager="npm"
49
49
  npm install intlayer next-intlayer
50
+ npx intlayer init
50
51
  ```
51
52
 
52
53
  ```bash packageManager="pnpm"
53
54
  pnpm add intlayer next-intlayer
55
+ pnpm intlayer init
54
56
  ```
55
57
 
56
58
  ```bash packageManager="yarn"
57
59
  yarn add intlayer next-intlayer
60
+ yarn intlayer init
61
+ ```
62
+
63
+ ```bash packageManager="bun"
64
+ bun add intlayer next-intlayer
65
+ bunx intlayer init
58
66
  ```
59
67
 
60
68
  - **intlayer**
@@ -1449,14 +1457,22 @@ Para ativar essa otimização, instale o pacote `@intlayer/swc`. Uma vez instala
1449
1457
 
1450
1458
  ```bash packageManager="npm"
1451
1459
  npm install @intlayer/swc --save-dev
1460
+ npx intlayer init
1452
1461
  ```
1453
1462
 
1454
1463
  ```bash packageManager="pnpm"
1455
1464
  pnpm add @intlayer/swc --save-dev
1465
+ pnpm intlayer init
1456
1466
  ```
1457
1467
 
1458
1468
  ```bash packageManager="yarn"
1459
1469
  yarn add @intlayer/swc --save-dev
1470
+ yarn intlayer init
1471
+ ```
1472
+
1473
+ ```bash packageManager="bun"
1474
+ bun add @intlayer/swc --dev
1475
+ bunx intlayer init
1460
1476
  ```
1461
1477
 
1462
1478
  > Nota: Esta otimização está disponível apenas para Next.js 13 e versões superiores.
@@ -74,16 +74,25 @@ Instale os pacotes necessários usando npm:
74
74
  ```bash packageManager="npm"
75
75
  npm install intlayer vue-intlayer
76
76
  npm install --save-dev nuxt-intlayer
77
+ npx intlayer init
77
78
  ```
78
79
 
79
80
  ```bash packageManager="pnpm"
80
81
  pnpm add intlayer vue-intlayer
81
82
  pnpm add --save-dev nuxt-intlayer
83
+ pnpm intlayer init
82
84
  ```
83
85
 
84
86
  ```bash packageManager="yarn"
85
87
  yarn add intlayer vue-intlayer
86
88
  yarn add --save-dev nuxt-intlayer
89
+ yarn intlayer init
90
+ ```
91
+
92
+ ```bash packageManager="bun"
93
+ bun add intlayer vue-intlayer
94
+ bun add --dev nuxt-intlayer
95
+ bunx intlayer init
87
96
  ```
88
97
 
89
98
  - **intlayer**
@@ -45,16 +45,25 @@ No seu projeto React Native, instale os seguintes pacotes:
45
45
  ```bash packageManager="npm"
46
46
  npm install intlayer react-intlayer
47
47
  npm install --save-dev react-native-intlayer
48
+ npx intlayer init
48
49
  ```
49
50
 
50
51
  ```bash packageManager="pnpm"
51
52
  pnpm add intlayer react-intlayer
52
53
  pnpm add --save-dev react-native-intlayer
54
+ pnpm intlayer init
53
55
  ```
54
56
 
55
57
  ```bash packageManager="yarn"
56
58
  yarn add intlayer react-intlayer
57
59
  yarn add --save-dev react-native-intlayer
60
+ yarn intlayer init
61
+ ```
62
+
63
+ ```bash packageManager="bun"
64
+ bun add intlayer react-intlayer
65
+ bun add --dev react-native-intlayer
66
+ bunx intlayer init
58
67
  ```
59
68
 
60
69
  ### Pacotes
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-04
3
- updatedAt: 2025-09-04
3
+ updatedAt: 2025-12-27
4
4
  title: Como traduzir seu React Router v7 – guia i18n 2025
5
5
  description: Aprenda como adicionar internacionalização (i18n) à sua aplicação React Router v7 usando Intlayer. Siga este guia completo para tornar seu app multilíngue com roteamento sensível à localidade.
6
6
  keywords:
@@ -21,6 +21,9 @@ applicationTemplate: https://github.com/AydinTheFirst/react-router-intlayer
21
21
  author: AydinTheFirst
22
22
  youtubeVideo: https://www.youtube.com/watch?v=dS9L7uJeak4
23
23
  history:
24
+ - version: 7.5.6
25
+ date: 2025-12-27
26
+ changes: Atualizar Layout e lidar com 404
24
27
  - version: 5.8.2
25
28
  date: 2025-09-04
26
29
  changes: Adicionado para React Router v7
@@ -57,11 +60,25 @@ Instale os pacotes necessários usando seu gerenciador de pacotes preferido:
57
60
  ```bash packageManager="npm"
58
61
  npm install intlayer react-intlayer
59
62
  npm install vite-intlayer --save-dev
63
+ npx intlayer init
60
64
  ```
61
65
 
62
66
  ```bash packageManager="pnpm"
63
67
  pnpm add intlayer react-intlayer
64
68
  pnpm add vite-intlayer --save-dev
69
+ pnpm intlayer init
70
+ ```
71
+
72
+ ```bash packageManager="yarn"
73
+ yarn add intlayer react-intlayer
74
+ yarn add vite-intlayer --save-dev
75
+ yarn intlayer init
76
+ ```
77
+
78
+ ```bash packageManager="bun"
79
+ bun add intlayer react-intlayer
80
+ bun add vite-intlayer --dev
81
+ bunx intlayer init
65
82
  ```
66
83
 
67
84
  - **intlayer**
@@ -160,15 +177,12 @@ module.exports = config;
160
177
 
161
178
  Configure sua configuração de rotas com rotas que reconhecem o idioma:
162
179
 
163
- ```typescript fileName="app/routes.ts" codeFormat="typescript"
180
+ ```typescript fileName="app/routes.ts"
164
181
  import { layout, route, type RouteConfig } from "@react-router/dev/routes";
165
182
 
166
183
  export default [
167
- layout("routes/layout.tsx", [
168
- route("/", "routes/page.tsx"), // Página raiz - redireciona para o idioma
169
- route("/:lang", "routes/[lang]/page.tsx"), // Página inicial localizada
170
- route("/:lang?/about", "routes/[lang]/about/page.tsx"), // Página sobre localizada
171
- ]),
184
+ route("/:lang?", "routes/page.tsx"), // Página inicial localizada
185
+ route("/:lang?/about", "routes/about/page.tsx"), // Página sobre localizada
172
186
  ] satisfies RouteConfig;
173
187
  ```
174
188
 
@@ -195,17 +209,50 @@ Configure seu layout raiz e layouts específicos para cada localidade:
195
209
 
196
210
  #### Layout Raiz
197
211
 
198
- ```tsx fileName="app/routes/layout.tsx" codeFormat="typescript"
199
- tsx fileName="app/routes/layout.tsx" codeFormat="typescript"
200
- // app/routes/layout.tsx
201
- import { Outlet } from "react-router";
212
+ ```tsx fileName="app/root.tsx"
213
+ import { getLocaleFromPath } from "intlayer";
202
214
  import { IntlayerProvider } from "react-intlayer";
215
+ import {
216
+ data,
217
+ Meta,
218
+ Scripts,
219
+ ScrollRestoration,
220
+ useLoaderData,
221
+ } from "react-router";
222
+ import type { Route } from "./+types/root";
223
+
224
+ // ... Unchanged App, links and ErrorBoundary code
225
+
226
+ export async function loader({ request }: Route.LoaderArgs) {
227
+ const locale = getLocaleFromPath(request.url);
228
+
229
+ if (!locale) {
230
+ throw data("Language not supported", { status: 404 });
231
+ }
232
+
233
+ return { locale };
234
+ }
235
+
236
+ export function Layout({
237
+ children,
238
+ }: { children: React.ReactNode } & Route.ComponentProps) {
239
+ const data = useLoaderData<typeof loader>();
240
+ const { locale } = data ?? {};
203
241
 
204
- export default function RootLayout() {
205
242
  return (
206
- <IntlayerProvider>
207
- <Outlet />
208
- </IntlayerProvider>
243
+ <html lang={locale}>
244
+ <head>
245
+ <meta charSet="utf-8" />
246
+ <meta content="width=device-width, initial-scale=1" name="viewport" />
247
+ <Meta />
248
+ <Links />
249
+ </head>
250
+ <body>
251
+ <IntlayerProvider locale={locale}>{children}</IntlayerProvider>
252
+ <ScrollRestoration />
253
+ <Scripts />
254
+ </body>
255
+ </html>
209
256
  );
210
257
  }
211
258
  ```
@@ -299,46 +346,46 @@ export default function LocalizedLink({ to, ...props }: RouterLinkProps) {
299
346
 
300
347
  Acesse seus dicionários de conteúdo em toda a sua aplicação:
301
348
 
302
- #### Página de Redirecionamento Raiz
349
+ #### Página Inicial Localizada
303
350
 
304
- ```tsx fileName="app/routes/page.tsx" codeFormat="typescript"
305
- import { useLocale } from "react-intlayer";
306
- import { Navigate } from "react-router";
351
+ ```tsx fileName="app/routes/page.tsx"
352
+ import { getIntlayer, validatePrefix } from "intlayer";
353
+ import { useIntlayer } from "react-intlayer";
354
+ import { data } from "react-router";
307
355
 
308
- export default function Page() {
309
- const { locale } = useLocale();
356
+ import { LocaleSwitcher } from "~/components/locale-switcher";
310
357
 
311
- return <Navigate replace to={locale} />;
312
- }
313
- ```
358
+ import { Navbar } from "~/components/navbar";
359
+ import type { Route } from "./+types/page";
314
360
 
315
- #### Página Inicial Localizada
361
+ export const loader = ({ params }: Route.LoaderArgs) => {
362
+ const { locale } = params;
316
363
 
317
- ```tsx fileName="app/routes/[lang]/page.tsx" codeFormat="typescript"
318
- import { useIntlayer } from "react-intlayer";
319
- import LocalizedLink from "~/components/localized-link";
364
+ const { isValid } = validatePrefix(locale);
365
+
366
+ if (!isValid) {
367
+ throw data("Locale not supported", { status: 404 });
368
+ }
369
+ };
370
+
371
+ export const meta: Route.MetaFunction = ({ params }) => {
372
+ const content = getIntlayer("page", params.locale);
373
+
374
+ return [
375
+ { title: content.title },
376
+ { content: content.description, name: "description" },
377
+ ];
378
+ };
320
379
 
321
380
  export default function Page() {
322
- const content = useIntlayer("page");
381
+ const { title, description, aboutLink } = useIntlayer("page");
323
382
 
324
383
  return (
325
- <div style={{ padding: "2rem", textAlign: "center" }}>
326
- <h1>{content.title}</h1>
327
- <p>{content.description}</p>
328
- <nav style={{ marginTop: "2rem" }}>
329
- <LocalizedLink
330
- to="/about"
331
- style={{
332
- display: "inline-block",
333
- padding: "0.5rem 1rem",
334
- backgroundColor: "#007bff",
335
- color: "white",
336
- textDecoration: "none",
337
- borderRadius: "4px",
338
- }}
339
- >
340
- {content.aboutLink}
341
- </LocalizedLink>
384
+ <div>
385
+ <h1>{title}</h1>
386
+ <p>{description}</p>
387
+ <nav>
388
+ <LocalizedLink to="/about">{aboutLink}</LocalizedLink>
342
389
  </nav>
343
390
  </div>
344
391
  );
@@ -31,6 +31,8 @@ history:
31
31
 
32
32
  Este guia demonstra como integrar o **Intlayer** para internacionalização perfeita em projetos React Router v7 usando **roteamento baseado em sistema de arquivos** (`@react-router/fs-routes`) com roteamento consciente de localidade, suporte a TypeScript e práticas modernas de desenvolvimento.
33
33
 
34
+ Para roteamento do lado do cliente, consulte o guia [Intlayer com React Router v7](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_with_react_router_v7.md).
35
+
34
36
  ## Índice
35
37
 
36
38
  <TOC/>
@@ -80,6 +82,7 @@ Instale os pacotes necessários usando seu gerenciador de pacotes preferido:
80
82
  npm install intlayer react-intlayer
81
83
  npm install vite-intlayer --save-dev
82
84
  npm install @react-router/fs-routes --save-dev
85
+ npx intlayer init
83
86
  ```
84
87
 
85
88
  ```bash packageManager="pnpm"
@@ -88,6 +91,13 @@ pnpm add vite-intlayer --save-dev
88
91
  pnpm add @react-router/fs-routes --save-dev
89
92
  ```
90
93
 
94
+ ```bash packageManager="bun"
95
+ bun add intlayer react-intlayer
96
+ bun add vite-intlayer --dev
97
+ bun add @react-router/fs-routes --dev
98
+ bunx intlayer init
99
+ ```
100
+
91
101
  - **intlayer**
92
102
 
93
103
  O pacote principal que fornece ferramentas de internacionalização para gerenciamento de configuração, tradução, [declaração de conteúdo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/content_file.md), transpilação e [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/cli/index.md).
@@ -195,12 +205,13 @@ Crie os seguintes arquivos no seu diretório `app/routes/`:
195
205
  #### Estrutura de Arquivos
196
206
 
197
207
  ```bash
198
- app/routes/
199
- ├── ($locale)._layout.tsx # Wrapper de layout para rotas de locale
200
- ├── ($locale)._index.tsx # Página inicial (/:locale?)
201
- ├── ($locale)._index.content.ts # Conteúdo da página inicial
202
- ├── ($locale).about.tsx # Página About (/:locale?/about)
203
- └── ($locale).about.content.ts # Conteúdo da página About
208
+ app/
209
+ ├── root.tsx # Wrapper de layout para rotas de locale
210
+ └──routes/
211
+ ├── ($locale)._index.tsx # Página inicial (/, /es, etc.)
212
+ ├── ($locale)._index.content.ts # Conteúdo da página inicial
213
+ ├── ($locale).about.tsx # Página About (/about, /es/about, etc.)
214
+ └── ($locale).about.content.ts # Conteúdo da página About
204
215
  ```
205
216
 
206
217
  As convenções de nomenclatura:
@@ -212,23 +223,50 @@ As convenções de nomenclatura:
212
223
 
213
224
  #### Componente de Layout
214
225
 
215
- ```tsx fileName="app/routes/($locale)._layout.tsx"
226
+ ```tsx fileName="app/root.tsx"
227
+ import { getLocaleFromPath } from "intlayer";
216
228
  import { IntlayerProvider } from "react-intlayer";
217
- import { Outlet } from "react-router";
229
+ import {
230
+ isRouteErrorResponse,
231
+ Meta,
232
+ Outlet,
233
+ Scripts,
234
+ ScrollRestoration,
235
+ useLoaderData,
236
+ } from "react-router";
218
237
 
219
- import { useI18nHTMLAttributes } from "~/hooks/useI18nHTMLAttributes";
238
+ import type { Route } from "./+types/root";
220
239
 
221
- import type { Route } from "./+types/($locale)._layout";
240
+ import "./app.css";
222
241
 
223
- export default function RootLayout({ params }: Route.ComponentProps) {
224
- useI18nHTMLAttributes();
242
+ // links and ErrorBoundary code
225
243
 
226
- const { locale } = params;
244
+ export async function loader({ request }: Route.LoaderArgs) {
245
+ const locale = getLocaleFromPath(request.url);
246
+
247
+ return { locale };
248
+ }
249
+
250
+ export function Layout({
251
+ children,
252
+ }: { children: React.ReactNode } & Route.ComponentProps) {
253
+ const data = useLoaderData<typeof loader>();
254
+ const { locale } = data ?? {};
227
255
 
228
256
  return (
229
- <IntlayerProvider locale={locale}>
230
- <Outlet />
231
- </IntlayerProvider>
257
+ <html lang={locale}>
258
+ <head>
259
+ <meta charSet="utf-8" />
260
+ <meta content="width=device-width, initial-scale=1" name="viewport" />
261
+ <Meta />
262
+ <Links />
263
+ </head>
264
+ <body>
265
+ <IntlayerProvider locale={locale}>{children}</IntlayerProvider>
266
+ <ScrollRestoration />
267
+ <Scripts />
268
+ </body>
269
+ </html>
232
270
  );
233
271
  }
234
272
  ```
@@ -236,11 +274,34 @@ export default function RootLayout({ params }: Route.ComponentProps) {
236
274
  #### Página Index
237
275
 
238
276
  ```tsx fileName="app/routes/($locale)._index.tsx"
277
+ import { getIntlayer, validatePrefix } from "intlayer";
239
278
  import { useIntlayer } from "react-intlayer";
240
- import { LocalizedLink } from "~/components/localized-link";
279
+ import { data } from "react-router";
280
+
281
+ import { LocaleSwitcher } from "~/components/locale-switcher";
282
+ import { Navbar } from "~/components/navbar";
241
283
 
242
284
  import type { Route } from "./+types/($locale)._index";
243
285
 
286
+ export const loader = ({ params }: Route.LoaderArgs) => {
287
+ const { locale } = params;
288
+
289
+ const { isValid } = validatePrefix(locale);
290
+
291
+ if (!isValid) {
292
+ throw data("Locale not supported", { status: 404 });
293
+ }
294
+ };
295
+
296
+ export const meta: Route.MetaFunction = ({ params }) => {
297
+ const content = getIntlayer("page", params.locale);
298
+
299
+ return [
300
+ { title: content.title },
301
+ { content: content.description, name: "description" },
302
+ ];
303
+ };
304
+
244
305
  export default function Page() {
245
306
  const { title, description, aboutLink } = useIntlayer("page");
246
307
 
@@ -259,11 +320,34 @@ export default function Page() {
259
320
  #### Página About
260
321
 
261
322
  ```tsx fileName="app/routes/($locale).about.tsx"
323
+ import { getIntlayer, validatePrefix } from "intlayer";
262
324
  import { useIntlayer } from "react-intlayer";
263
- import { LocalizedLink } from "~/components/localized-link";
325
+ import { data } from "react-router";
326
+
327
+ import { LocaleSwitcher } from "~/components/locale-switcher";
328
+ import { Navbar } from "~/components/navbar";
264
329
 
265
330
  import type { Route } from "./+types/($locale).about";
266
331
 
332
+ export const loader = ({ params }: Route.LoaderArgs) => {
333
+ const { locale } = params;
334
+
335
+ const { isValid } = validatePrefix(locale);
336
+
337
+ if (!isValid) {
338
+ throw data("Locale not supported", { status: 404 });
339
+ }
340
+ };
341
+
342
+ export const meta: Route.MetaFunction = ({ params }) => {
343
+ const content = getIntlayer("about", params.locale);
344
+
345
+ return [
346
+ { title: content.title },
347
+ { content: content.description, name: "description" },
348
+ ];
349
+ };
350
+
267
351
  export default function AboutPage() {
268
352
  const { title, content, homeLink } = useIntlayer("about");
269
353
 
@@ -482,7 +566,7 @@ export const useI18nHTMLAttributes = () => {
482
566
  };
483
567
  ```
484
568
 
485
- Este hook já é usado no componente de layout (`($locale)._layout.tsx`) mostrado no Passo 5.
569
+ Este hook já é usado no componente de layout (`root.tsx`) mostrado no Passo 5.
486
570
 
487
571
  ### Passo 10: Adicionar middleware (Opcional)
488
572
 
@@ -99,21 +99,25 @@ Instale os pacotes necessários usando npm:
99
99
  ```bash packageManager="npm"
100
100
  npm install intlayer svelte-intlayer
101
101
  npm install vite-intlayer --save-dev
102
+ npx intlayer init
102
103
  ```
103
104
 
104
105
  ```bash packageManager="pnpm"
105
106
  pnpm add intlayer svelte-intlayer
106
107
  pnpm add vite-intlayer --save-dev
108
+ pnpm intlayer init
107
109
  ```
108
110
 
109
111
  ```bash packageManager="yarn"
110
112
  yarn add intlayer svelte-intlayer
111
113
  yarn add vite-intlayer --save-dev
114
+ yarn intlayer init
112
115
  ```
113
116
 
114
117
  ```bash packageManager="bun"
115
118
  bun add intlayer svelte-intlayer
116
119
  bun add vite-intlayer --save-dev
120
+ bunx intlayer init
117
121
  ```
118
122
 
119
123
  - **intlayer**: O pacote principal de i18n.
@@ -273,21 +277,25 @@ Instale os pacotes necessários usando npm:
273
277
  ```bash packageManager="npm"
274
278
  npm install intlayer svelte-intlayer
275
279
  npm install vite-intlayer --save-dev
280
+ npx intlayer init
276
281
  ```
277
282
 
278
283
  ```bash packageManager="pnpm"
279
284
  pnpm add intlayer svelte-intlayer
280
285
  pnpm add vite-intlayer --save-dev
286
+ pnpm intlayer init
281
287
  ```
282
288
 
283
289
  ```bash packageManager="yarn"
284
290
  yarn add intlayer svelte-intlayer
285
291
  yarn add vite-intlayer --save-dev
292
+ yarn intlayer init
286
293
  ```
287
294
 
288
295
  ```bash packageManager="bun"
289
296
  bun add intlayer svelte-intlayer
290
297
  bun add vite-intlayer --save-dev
298
+ bunx intlayer init
291
299
  ```
292
300
 
293
301
  - **intlayer**: O pacote principal de i18n.