@intlayer/docs 8.7.7 → 8.7.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 (1458) hide show
  1. package/blog/ar/i18n_using_next-i18next.md +1 -1
  2. package/blog/ar/i18n_using_next-intl.md +1 -1
  3. package/blog/ar/list_i18n_technologies/frameworks/react-native.md +0 -4
  4. package/blog/de/i18n_using_next-i18next.md +1 -1
  5. package/blog/de/i18n_using_next-intl.md +1 -1
  6. package/blog/de/list_i18n_technologies/frameworks/react-native.md +0 -4
  7. package/blog/en/i18n_using_next-i18next.md +1 -1
  8. package/blog/en/i18n_using_next-intl.md +1 -1
  9. package/blog/en/list_i18n_technologies/frameworks/react-native.md +0 -4
  10. package/blog/en-GB/i18n_using_next-i18next.md +1 -1
  11. package/blog/en-GB/i18n_using_next-intl.md +1 -1
  12. package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +0 -4
  13. package/blog/es/i18n_using_next-i18next.md +1 -1
  14. package/blog/es/i18n_using_next-intl.md +1 -1
  15. package/blog/es/list_i18n_technologies/frameworks/react-native.md +0 -4
  16. package/blog/fr/i18n_using_next-i18next.md +1 -1
  17. package/blog/fr/i18n_using_next-intl.md +1 -1
  18. package/blog/fr/list_i18n_technologies/frameworks/react-native.md +0 -4
  19. package/blog/hi/i18n_using_next-i18next.md +1 -1
  20. package/blog/hi/i18n_using_next-intl.md +1 -1
  21. package/blog/hi/list_i18n_technologies/frameworks/react-native.md +0 -4
  22. package/blog/id/i18n_using_next-i18next.md +1 -1
  23. package/blog/id/i18n_using_next-intl.md +1 -1
  24. package/blog/it/i18n_using_next-i18next.md +1 -1
  25. package/blog/it/i18n_using_next-intl.md +1 -1
  26. package/blog/it/list_i18n_technologies/frameworks/react-native.md +0 -4
  27. package/blog/ja/i18n_using_next-i18next.md +1 -1
  28. package/blog/ja/i18n_using_next-intl.md +1 -1
  29. package/blog/ko/i18n_using_next-i18next.md +1 -1
  30. package/blog/ko/i18n_using_next-intl.md +1 -1
  31. package/blog/pl/i18n_using_next-i18next.md +1 -1
  32. package/blog/pl/i18n_using_next-intl.md +1 -1
  33. package/blog/pt/i18n_using_next-i18next.md +1 -1
  34. package/blog/pt/i18n_using_next-intl.md +1 -1
  35. package/blog/pt/list_i18n_technologies/frameworks/react-native.md +0 -4
  36. package/blog/ru/i18n_using_next-i18next.md +1 -1
  37. package/blog/ru/i18n_using_next-intl.md +1 -1
  38. package/blog/ru/list_i18n_technologies/frameworks/react-native.md +0 -4
  39. package/blog/tr/i18n_using_next-i18next.md +1 -1
  40. package/blog/tr/i18n_using_next-intl.md +1 -1
  41. package/blog/uk/i18n_using_next-i18next.md +1 -1
  42. package/blog/uk/i18n_using_next-intl.md +1 -1
  43. package/blog/vi/i18n_using_next-i18next.md +1 -1
  44. package/blog/vi/i18n_using_next-intl.md +1 -1
  45. package/blog/zh/i18n_using_next-i18next.md +1 -1
  46. package/blog/zh/i18n_using_next-intl.md +1 -1
  47. package/dist/cjs/common.cjs.map +1 -1
  48. package/dist/cjs/generated/docs.entry.cjs +140 -0
  49. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  50. package/dist/esm/common.mjs.map +1 -1
  51. package/dist/esm/generated/docs.entry.mjs +140 -0
  52. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  53. package/dist/types/common.d.ts +1 -0
  54. package/dist/types/common.d.ts.map +1 -1
  55. package/dist/types/generated/docs.entry.d.ts +7 -0
  56. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  57. package/docs/ar/dictionary/condition.md +2 -116
  58. package/docs/ar/dictionary/content_file.md +2 -202
  59. package/docs/ar/dictionary/enumeration.md +2 -116
  60. package/docs/ar/dictionary/file.md +3 -103
  61. package/docs/ar/dictionary/function_fetching.md +3 -105
  62. package/docs/ar/dictionary/gender.md +2 -140
  63. package/docs/ar/dictionary/insertion.md +3 -57
  64. package/docs/ar/dictionary/nesting.md +3 -121
  65. package/docs/ar/dictionary/translation.md +4 -146
  66. package/docs/ar/interest_of_intlayer.md +2 -59
  67. package/docs/ar/intlayer_CMS.md +3 -228
  68. package/docs/ar/intlayer_visual_editor.md +1 -72
  69. package/docs/ar/intlayer_with_adonisjs.md +3 -109
  70. package/docs/ar/intlayer_with_analog.md +21 -41
  71. package/docs/ar/intlayer_with_angular.md +15 -41
  72. package/docs/ar/intlayer_with_astro.md +187 -58
  73. package/docs/ar/intlayer_with_astro_lit.md +619 -0
  74. package/docs/ar/intlayer_with_astro_preact.md +568 -0
  75. package/docs/ar/intlayer_with_astro_react.md +566 -0
  76. package/docs/ar/intlayer_with_astro_solid.md +566 -0
  77. package/docs/ar/intlayer_with_astro_svelte.md +570 -0
  78. package/docs/ar/intlayer_with_astro_vanilla.md +547 -0
  79. package/docs/ar/intlayer_with_astro_vue.md +588 -0
  80. package/docs/ar/intlayer_with_create_react_app.md +8 -388
  81. package/docs/ar/intlayer_with_express.md +5 -177
  82. package/docs/ar/intlayer_with_fastify.md +5 -193
  83. package/docs/ar/intlayer_with_hono.md +2 -2
  84. package/docs/ar/intlayer_with_lynx+react.md +2 -116
  85. package/docs/ar/intlayer_with_nestjs.md +3 -33
  86. package/docs/ar/intlayer_with_nextjs_14.md +58 -491
  87. package/docs/ar/intlayer_with_nextjs_15.md +56 -815
  88. package/docs/ar/intlayer_with_nextjs_16.md +40 -883
  89. package/docs/ar/intlayer_with_nextjs_compiler.md +2 -62
  90. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +12 -506
  91. package/docs/ar/intlayer_with_nextjs_page_router.md +37 -652
  92. package/docs/ar/intlayer_with_nuxt.md +16 -98
  93. package/docs/ar/intlayer_with_react_native+expo.md +31 -283
  94. package/docs/ar/intlayer_with_react_router_v7.md +15 -91
  95. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +15 -91
  96. package/docs/ar/intlayer_with_storybook.md +1 -37
  97. package/docs/ar/intlayer_with_svelte_kit.md +29 -71
  98. package/docs/ar/intlayer_with_tanstack+solid.md +14 -70
  99. package/docs/ar/intlayer_with_tanstack.md +14 -62
  100. package/docs/ar/intlayer_with_vanilla.md +28 -108
  101. package/docs/ar/intlayer_with_vite+lit.md +98 -156
  102. package/docs/ar/intlayer_with_vite+preact.md +101 -710
  103. package/docs/ar/intlayer_with_vite+react.md +113 -797
  104. package/docs/ar/intlayer_with_vite+react_compiler.md +87 -1
  105. package/docs/ar/intlayer_with_vite+solid.md +79 -152
  106. package/docs/ar/intlayer_with_vite+svelte.md +104 -132
  107. package/docs/ar/intlayer_with_vite+vanilla.md +105 -155
  108. package/docs/ar/intlayer_with_vite+vue.md +92 -253
  109. package/docs/ar/introduction.md +2 -58
  110. package/docs/ar/packages/express-intlayer/t.md +6 -181
  111. package/docs/ar/packages/hono-intlayer/t.md +1 -45
  112. package/docs/ar/packages/intlayer/getConfiguration.md +2 -54
  113. package/docs/ar/packages/intlayer/getEnumeration.md +2 -60
  114. package/docs/ar/packages/intlayer/getHTMLTextDir.md +2 -38
  115. package/docs/ar/packages/intlayer/getLocaleLang.md +1 -19
  116. package/docs/ar/packages/intlayer/getLocaleName.md +1 -43
  117. package/docs/ar/packages/intlayer/getLocalizedUrl.md +2 -45
  118. package/docs/ar/packages/intlayer/getMultilingualUrls.md +2 -60
  119. package/docs/ar/packages/intlayer/getPathWithoutLocale.md +1 -20
  120. package/docs/ar/packages/intlayer/getPrefix.md +1 -12
  121. package/docs/ar/packages/intlayer/getTranslation.md +3 -87
  122. package/docs/ar/packages/intlayer/getTranslationContent.md +3 -87
  123. package/docs/ar/packages/next-intlayer/t.md +5 -137
  124. package/docs/ar/packages/next-intlayer/useDictionary.md +3 -118
  125. package/docs/ar/packages/next-intlayer/useIntlayer.md +3 -117
  126. package/docs/ar/packages/next-intlayer/useLocale.md +1 -51
  127. package/docs/ar/packages/react-intlayer/t.md +4 -106
  128. package/docs/ar/packages/react-intlayer/useDictionary.md +3 -115
  129. package/docs/ar/packages/react-intlayer/useI18n.md +4 -107
  130. package/docs/ar/packages/react-intlayer/useIntlayer.md +3 -109
  131. package/docs/ar/packages/react-intlayer/useLocale.md +3 -103
  132. package/docs/ar/per_locale_file.md +3 -35
  133. package/docs/bn/intlayer_with_fastify.md +5 -193
  134. package/docs/bn/intlayer_with_hono.md +5 -158
  135. package/docs/bn/intlayer_with_storybook.md +1 -37
  136. package/docs/bn/intlayer_with_vanilla.md +28 -108
  137. package/docs/bn/intlayer_with_vite+lit.md +98 -119
  138. package/docs/bn/intlayer_with_vite+vanilla.md +105 -155
  139. package/docs/bn/introduction.md +2 -58
  140. package/docs/cs/intlayer_with_fastify.md +5 -193
  141. package/docs/cs/intlayer_with_hono.md +5 -158
  142. package/docs/cs/intlayer_with_storybook.md +1 -37
  143. package/docs/cs/intlayer_with_vanilla.md +28 -108
  144. package/docs/cs/intlayer_with_vite+lit.md +98 -156
  145. package/docs/cs/intlayer_with_vite+vanilla.md +105 -155
  146. package/docs/cs/introduction.md +2 -58
  147. package/docs/de/dictionary/condition.md +2 -116
  148. package/docs/de/dictionary/content_file.md +2 -201
  149. package/docs/de/dictionary/enumeration.md +2 -116
  150. package/docs/de/dictionary/file.md +3 -100
  151. package/docs/de/dictionary/function_fetching.md +3 -103
  152. package/docs/de/dictionary/gender.md +2 -181
  153. package/docs/de/dictionary/insertion.md +3 -57
  154. package/docs/de/dictionary/nesting.md +3 -123
  155. package/docs/de/dictionary/translation.md +4 -146
  156. package/docs/de/interest_of_intlayer.md +2 -59
  157. package/docs/de/intlayer_CMS.md +3 -226
  158. package/docs/de/intlayer_visual_editor.md +1 -72
  159. package/docs/de/intlayer_with_adonisjs.md +3 -108
  160. package/docs/de/intlayer_with_analog.md +21 -41
  161. package/docs/de/intlayer_with_angular.md +15 -41
  162. package/docs/de/intlayer_with_astro.md +181 -56
  163. package/docs/de/intlayer_with_astro_lit.md +615 -0
  164. package/docs/de/intlayer_with_astro_preact.md +564 -0
  165. package/docs/de/intlayer_with_astro_react.md +562 -0
  166. package/docs/de/intlayer_with_astro_solid.md +562 -0
  167. package/docs/de/intlayer_with_astro_svelte.md +566 -0
  168. package/docs/de/intlayer_with_astro_vanilla.md +543 -0
  169. package/docs/de/intlayer_with_astro_vue.md +584 -0
  170. package/docs/de/intlayer_with_create_react_app.md +33 -686
  171. package/docs/de/intlayer_with_express.md +5 -182
  172. package/docs/de/intlayer_with_fastify.md +5 -193
  173. package/docs/de/intlayer_with_hono.md +5 -158
  174. package/docs/de/intlayer_with_lynx+react.md +2 -75
  175. package/docs/de/intlayer_with_nestjs.md +3 -33
  176. package/docs/de/intlayer_with_nextjs_14.md +51 -573
  177. package/docs/de/intlayer_with_nextjs_15.md +61 -823
  178. package/docs/de/intlayer_with_nextjs_16.md +45 -870
  179. package/docs/de/intlayer_with_nextjs_compiler.md +2 -62
  180. package/docs/de/intlayer_with_nextjs_no_locale_path.md +11 -499
  181. package/docs/de/intlayer_with_nextjs_page_router.md +36 -632
  182. package/docs/de/intlayer_with_nuxt.md +16 -98
  183. package/docs/de/intlayer_with_react_native+expo.md +31 -286
  184. package/docs/de/intlayer_with_react_router_v7.md +15 -91
  185. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +14 -62
  186. package/docs/de/intlayer_with_storybook.md +1 -37
  187. package/docs/de/intlayer_with_svelte_kit.md +29 -71
  188. package/docs/de/intlayer_with_tanstack+solid.md +14 -70
  189. package/docs/de/intlayer_with_tanstack.md +14 -62
  190. package/docs/de/intlayer_with_vanilla.md +28 -108
  191. package/docs/de/intlayer_with_vite+lit.md +98 -162
  192. package/docs/de/intlayer_with_vite+preact.md +104 -713
  193. package/docs/de/intlayer_with_vite+react.md +105 -789
  194. package/docs/de/intlayer_with_vite+react_compiler.md +87 -1
  195. package/docs/de/intlayer_with_vite+solid.md +79 -153
  196. package/docs/de/intlayer_with_vite+svelte.md +104 -132
  197. package/docs/de/intlayer_with_vite+vanilla.md +105 -155
  198. package/docs/de/intlayer_with_vite+vue.md +92 -285
  199. package/docs/de/introduction.md +2 -61
  200. package/docs/de/packages/express-intlayer/t.md +6 -182
  201. package/docs/de/packages/hono-intlayer/t.md +3 -95
  202. package/docs/de/packages/intlayer/getConfiguration.md +2 -54
  203. package/docs/de/packages/intlayer/getEnumeration.md +2 -60
  204. package/docs/de/packages/intlayer/getHTMLTextDir.md +2 -38
  205. package/docs/de/packages/intlayer/getLocaleLang.md +1 -19
  206. package/docs/de/packages/intlayer/getLocaleName.md +1 -43
  207. package/docs/de/packages/intlayer/getLocalizedUrl.md +2 -45
  208. package/docs/de/packages/intlayer/getMultilingualUrls.md +2 -60
  209. package/docs/de/packages/intlayer/getPathWithoutLocale.md +1 -19
  210. package/docs/de/packages/intlayer/getPrefix.md +1 -15
  211. package/docs/de/packages/intlayer/getTranslation.md +3 -86
  212. package/docs/de/packages/intlayer/getTranslationContent.md +3 -87
  213. package/docs/de/packages/next-intlayer/t.md +5 -137
  214. package/docs/de/packages/next-intlayer/useDictionary.md +3 -118
  215. package/docs/de/packages/next-intlayer/useIntlayer.md +3 -120
  216. package/docs/de/packages/next-intlayer/useLocale.md +1 -51
  217. package/docs/de/packages/react-intlayer/t.md +4 -109
  218. package/docs/de/packages/react-intlayer/useDictionary.md +3 -127
  219. package/docs/de/packages/react-intlayer/useI18n.md +4 -107
  220. package/docs/de/packages/react-intlayer/useIntlayer.md +3 -114
  221. package/docs/de/packages/react-intlayer/useLocale.md +3 -103
  222. package/docs/de/per_locale_file.md +3 -35
  223. package/docs/en/benchmark/___NOTE.md +16 -0
  224. package/docs/en/dictionary/condition.md +2 -116
  225. package/docs/en/dictionary/content_file.md +2 -200
  226. package/docs/en/dictionary/enumeration.md +4 -202
  227. package/docs/en/dictionary/file.md +3 -100
  228. package/docs/en/dictionary/function_fetching.md +3 -103
  229. package/docs/en/dictionary/gender.md +2 -140
  230. package/docs/en/dictionary/insertion.md +3 -57
  231. package/docs/en/dictionary/nesting.md +3 -121
  232. package/docs/en/dictionary/translation.md +4 -146
  233. package/docs/en/interest_of_intlayer.md +2 -58
  234. package/docs/en/intlayer_CMS.md +3 -227
  235. package/docs/en/intlayer_visual_editor.md +1 -72
  236. package/docs/en/intlayer_with_adonisjs.md +3 -107
  237. package/docs/en/intlayer_with_analog.md +21 -41
  238. package/docs/en/intlayer_with_angular.md +15 -41
  239. package/docs/en/intlayer_with_astro.md +397 -38
  240. package/docs/en/intlayer_with_astro_lit.md +616 -0
  241. package/docs/en/intlayer_with_astro_preact.md +571 -0
  242. package/docs/en/intlayer_with_astro_react.md +564 -0
  243. package/docs/en/intlayer_with_astro_solid.md +564 -0
  244. package/docs/en/intlayer_with_astro_svelte.md +568 -0
  245. package/docs/en/intlayer_with_astro_vanilla.md +543 -0
  246. package/docs/en/intlayer_with_astro_vue.md +586 -0
  247. package/docs/en/intlayer_with_create_react_app.md +34 -686
  248. package/docs/en/intlayer_with_express.md +5 -179
  249. package/docs/en/intlayer_with_fastify.md +5 -193
  250. package/docs/en/intlayer_with_hono.md +5 -158
  251. package/docs/en/intlayer_with_lynx+react.md +3 -109
  252. package/docs/en/intlayer_with_nestjs.md +3 -31
  253. package/docs/en/intlayer_with_nextjs_14.md +47 -777
  254. package/docs/en/intlayer_with_nextjs_15.md +39 -822
  255. package/docs/en/intlayer_with_nextjs_16.md +40 -891
  256. package/docs/en/intlayer_with_nextjs_compiler.md +2 -70
  257. package/docs/en/intlayer_with_nextjs_no_locale_path.md +11 -488
  258. package/docs/en/intlayer_with_nextjs_page_router.md +102 -713
  259. package/docs/en/intlayer_with_nuxt.md +16 -98
  260. package/docs/en/intlayer_with_react_native+expo.md +31 -291
  261. package/docs/en/intlayer_with_react_router_v7.md +15 -107
  262. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +15 -99
  263. package/docs/en/intlayer_with_storybook.md +1 -37
  264. package/docs/en/intlayer_with_svelte_kit.md +28 -78
  265. package/docs/en/intlayer_with_tanstack+solid.md +14 -70
  266. package/docs/en/intlayer_with_tanstack.md +14 -70
  267. package/docs/en/intlayer_with_vanilla.md +28 -108
  268. package/docs/en/intlayer_with_vite+lit.md +98 -162
  269. package/docs/en/intlayer_with_vite+preact.md +100 -717
  270. package/docs/en/intlayer_with_vite+react.md +104 -796
  271. package/docs/en/intlayer_with_vite+react_compiler.md +87 -1
  272. package/docs/en/intlayer_with_vite+solid.md +79 -211
  273. package/docs/en/intlayer_with_vite+svelte.md +104 -138
  274. package/docs/en/intlayer_with_vite+vanilla.md +105 -155
  275. package/docs/en/intlayer_with_vite+vue.md +92 -244
  276. package/docs/en/introduction.md +2 -58
  277. package/docs/en/packages/express-intlayer/t.md +6 -181
  278. package/docs/en/packages/hono-intlayer/t.md +3 -95
  279. package/docs/en/packages/intlayer/getConfiguration.md +2 -54
  280. package/docs/en/packages/intlayer/getEnumeration.md +2 -60
  281. package/docs/en/packages/intlayer/getHTMLTextDir.md +2 -38
  282. package/docs/en/packages/intlayer/getLocaleLang.md +1 -19
  283. package/docs/en/packages/intlayer/getLocaleName.md +1 -43
  284. package/docs/en/packages/intlayer/getLocalizedUrl.md +3 -71
  285. package/docs/en/packages/intlayer/getMultilingualUrls.md +3 -79
  286. package/docs/en/packages/intlayer/getPathWithoutLocale.md +1 -19
  287. package/docs/en/packages/intlayer/getPrefix.md +1 -15
  288. package/docs/en/packages/intlayer/getTranslation.md +3 -87
  289. package/docs/en/packages/next-intlayer/t.md +5 -137
  290. package/docs/en/packages/next-intlayer/useDictionary.md +3 -118
  291. package/docs/en/packages/next-intlayer/useIntlayer.md +3 -117
  292. package/docs/en/packages/next-intlayer/useLocale.md +1 -51
  293. package/docs/en/packages/react-intlayer/t.md +4 -109
  294. package/docs/en/packages/react-intlayer/useI18n.md +4 -107
  295. package/docs/en/packages/react-intlayer/useLocale.md +3 -103
  296. package/docs/en/per_locale_file.md +3 -33
  297. package/docs/en-GB/dictionary/condition.md +2 -116
  298. package/docs/en-GB/dictionary/content_file.md +2 -213
  299. package/docs/en-GB/dictionary/enumeration.md +2 -116
  300. package/docs/en-GB/dictionary/file.md +3 -100
  301. package/docs/en-GB/dictionary/function_fetching.md +3 -103
  302. package/docs/en-GB/dictionary/gender.md +2 -140
  303. package/docs/en-GB/dictionary/insertion.md +3 -81
  304. package/docs/en-GB/dictionary/nesting.md +3 -121
  305. package/docs/en-GB/dictionary/translation.md +4 -146
  306. package/docs/en-GB/interest_of_intlayer.md +2 -58
  307. package/docs/en-GB/intlayer_CMS.md +3 -223
  308. package/docs/en-GB/intlayer_visual_editor.md +1 -72
  309. package/docs/en-GB/intlayer_with_adonisjs.md +3 -109
  310. package/docs/en-GB/intlayer_with_analog.md +21 -41
  311. package/docs/en-GB/intlayer_with_angular.md +15 -41
  312. package/docs/en-GB/intlayer_with_astro.md +183 -53
  313. package/docs/en-GB/intlayer_with_astro_lit.md +619 -0
  314. package/docs/en-GB/intlayer_with_astro_preact.md +568 -0
  315. package/docs/en-GB/intlayer_with_astro_react.md +566 -0
  316. package/docs/en-GB/intlayer_with_astro_solid.md +566 -0
  317. package/docs/en-GB/intlayer_with_astro_svelte.md +570 -0
  318. package/docs/en-GB/intlayer_with_astro_vanilla.md +547 -0
  319. package/docs/en-GB/intlayer_with_astro_vue.md +588 -0
  320. package/docs/en-GB/intlayer_with_create_react_app.md +33 -707
  321. package/docs/en-GB/intlayer_with_express.md +5 -182
  322. package/docs/en-GB/intlayer_with_fastify.md +5 -193
  323. package/docs/en-GB/intlayer_with_hono.md +5 -158
  324. package/docs/en-GB/intlayer_with_lynx+react.md +2 -116
  325. package/docs/en-GB/intlayer_with_nestjs.md +3 -31
  326. package/docs/en-GB/intlayer_with_nextjs_14.md +77 -773
  327. package/docs/en-GB/intlayer_with_nextjs_15.md +59 -839
  328. package/docs/en-GB/intlayer_with_nextjs_16.md +39 -822
  329. package/docs/en-GB/intlayer_with_nextjs_compiler.md +1 -1
  330. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +11 -500
  331. package/docs/en-GB/intlayer_with_nextjs_page_router.md +38 -634
  332. package/docs/en-GB/intlayer_with_nuxt.md +16 -103
  333. package/docs/en-GB/intlayer_with_react_native+expo.md +31 -284
  334. package/docs/en-GB/intlayer_with_react_router_v7.md +14 -30
  335. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +14 -30
  336. package/docs/en-GB/intlayer_with_storybook.md +1 -37
  337. package/docs/en-GB/intlayer_with_svelte_kit.md +28 -10
  338. package/docs/en-GB/intlayer_with_tanstack+solid.md +14 -70
  339. package/docs/en-GB/intlayer_with_tanstack.md +13 -1
  340. package/docs/en-GB/intlayer_with_vanilla.md +28 -108
  341. package/docs/en-GB/intlayer_with_vite+lit.md +98 -162
  342. package/docs/en-GB/intlayer_with_vite+preact.md +98 -647
  343. package/docs/en-GB/intlayer_with_vite+react.md +99 -906
  344. package/docs/en-GB/intlayer_with_vite+react_compiler.md +87 -1
  345. package/docs/en-GB/intlayer_with_vite+solid.md +78 -88
  346. package/docs/en-GB/intlayer_with_vite+svelte.md +103 -71
  347. package/docs/en-GB/intlayer_with_vite+vanilla.md +105 -155
  348. package/docs/en-GB/intlayer_with_vite+vue.md +91 -195
  349. package/docs/en-GB/introduction.md +2 -58
  350. package/docs/en-GB/packages/express-intlayer/t.md +6 -181
  351. package/docs/en-GB/packages/hono-intlayer/t.md +3 -95
  352. package/docs/en-GB/packages/intlayer/getConfiguration.md +2 -54
  353. package/docs/en-GB/packages/intlayer/getEnumeration.md +2 -60
  354. package/docs/en-GB/packages/intlayer/getHTMLTextDir.md +2 -38
  355. package/docs/en-GB/packages/intlayer/getLocaleLang.md +1 -19
  356. package/docs/en-GB/packages/intlayer/getLocaleName.md +1 -43
  357. package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +2 -45
  358. package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +2 -62
  359. package/docs/en-GB/packages/intlayer/getPathWithoutLocale.md +1 -19
  360. package/docs/en-GB/packages/intlayer/getPrefix.md +1 -15
  361. package/docs/en-GB/packages/intlayer/getTranslation.md +4 -107
  362. package/docs/en-GB/packages/intlayer/getTranslationContent.md +3 -98
  363. package/docs/en-GB/packages/next-intlayer/t.md +5 -141
  364. package/docs/en-GB/packages/next-intlayer/useDictionary.md +3 -124
  365. package/docs/en-GB/packages/next-intlayer/useIntlayer.md +3 -119
  366. package/docs/en-GB/packages/next-intlayer/useLocale.md +1 -51
  367. package/docs/en-GB/packages/react-intlayer/t.md +4 -110
  368. package/docs/en-GB/packages/react-intlayer/useDictionary.md +3 -117
  369. package/docs/en-GB/packages/react-intlayer/useI18n.md +3 -106
  370. package/docs/en-GB/packages/react-intlayer/useIntlayer.md +3 -114
  371. package/docs/en-GB/packages/react-intlayer/useLocale.md +3 -102
  372. package/docs/en-GB/per_locale_file.md +3 -33
  373. package/docs/es/dictionary/condition.md +2 -116
  374. package/docs/es/dictionary/content_file.md +2 -233
  375. package/docs/es/dictionary/enumeration.md +2 -116
  376. package/docs/es/dictionary/file.md +3 -100
  377. package/docs/es/dictionary/function_fetching.md +3 -103
  378. package/docs/es/dictionary/gender.md +2 -140
  379. package/docs/es/dictionary/insertion.md +3 -57
  380. package/docs/es/dictionary/nesting.md +3 -121
  381. package/docs/es/dictionary/translation.md +4 -146
  382. package/docs/es/interest_of_intlayer.md +2 -58
  383. package/docs/es/intlayer_CMS.md +3 -227
  384. package/docs/es/intlayer_visual_editor.md +1 -72
  385. package/docs/es/intlayer_with_adonisjs.md +3 -107
  386. package/docs/es/intlayer_with_analog.md +21 -41
  387. package/docs/es/intlayer_with_angular.md +15 -41
  388. package/docs/es/intlayer_with_astro.md +178 -52
  389. package/docs/es/intlayer_with_astro_lit.md +612 -0
  390. package/docs/es/intlayer_with_astro_preact.md +562 -0
  391. package/docs/es/intlayer_with_astro_react.md +560 -0
  392. package/docs/es/intlayer_with_astro_solid.md +560 -0
  393. package/docs/es/intlayer_with_astro_svelte.md +564 -0
  394. package/docs/es/intlayer_with_astro_vanilla.md +539 -0
  395. package/docs/es/intlayer_with_astro_vue.md +582 -0
  396. package/docs/es/intlayer_with_create_react_app.md +33 -649
  397. package/docs/es/intlayer_with_express.md +5 -179
  398. package/docs/es/intlayer_with_fastify.md +5 -193
  399. package/docs/es/intlayer_with_hono.md +5 -158
  400. package/docs/es/intlayer_with_lynx+react.md +2 -108
  401. package/docs/es/intlayer_with_nestjs.md +3 -31
  402. package/docs/es/intlayer_with_nextjs_14.md +53 -678
  403. package/docs/es/intlayer_with_nextjs_15.md +56 -812
  404. package/docs/es/intlayer_with_nextjs_16.md +40 -890
  405. package/docs/es/intlayer_with_nextjs_compiler.md +2 -62
  406. package/docs/es/intlayer_with_nextjs_no_locale_path.md +11 -486
  407. package/docs/es/intlayer_with_nextjs_page_router.md +37 -648
  408. package/docs/es/intlayer_with_nuxt.md +16 -98
  409. package/docs/es/intlayer_with_react_native+expo.md +31 -284
  410. package/docs/es/intlayer_with_react_router_v7.md +15 -92
  411. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +15 -92
  412. package/docs/es/intlayer_with_storybook.md +1 -37
  413. package/docs/es/intlayer_with_svelte_kit.md +29 -71
  414. package/docs/es/intlayer_with_tanstack+solid.md +14 -70
  415. package/docs/es/intlayer_with_tanstack.md +14 -62
  416. package/docs/es/intlayer_with_vanilla.md +28 -108
  417. package/docs/es/intlayer_with_vite+lit.md +98 -162
  418. package/docs/es/intlayer_with_vite+preact.md +100 -709
  419. package/docs/es/intlayer_with_vite+react.md +105 -789
  420. package/docs/es/intlayer_with_vite+react_compiler.md +87 -1
  421. package/docs/es/intlayer_with_vite+solid.md +79 -152
  422. package/docs/es/intlayer_with_vite+svelte.md +104 -132
  423. package/docs/es/intlayer_with_vite+vanilla.md +105 -155
  424. package/docs/es/intlayer_with_vite+vue.md +92 -255
  425. package/docs/es/introduction.md +2 -60
  426. package/docs/es/packages/express-intlayer/t.md +6 -183
  427. package/docs/es/packages/hono-intlayer/t.md +3 -95
  428. package/docs/es/packages/intlayer/getConfiguration.md +2 -54
  429. package/docs/es/packages/intlayer/getEnumeration.md +2 -60
  430. package/docs/es/packages/intlayer/getHTMLTextDir.md +2 -38
  431. package/docs/es/packages/intlayer/getLocaleLang.md +1 -19
  432. package/docs/es/packages/intlayer/getLocaleName.md +1 -43
  433. package/docs/es/packages/intlayer/getLocalizedUrl.md +2 -45
  434. package/docs/es/packages/intlayer/getMultilingualUrls.md +2 -62
  435. package/docs/es/packages/intlayer/getPathWithoutLocale.md +1 -19
  436. package/docs/es/packages/intlayer/getPrefix.md +1 -15
  437. package/docs/es/packages/intlayer/getTranslation.md +3 -87
  438. package/docs/es/packages/intlayer/getTranslationContent.md +3 -87
  439. package/docs/es/packages/next-intlayer/index.md +2 -60
  440. package/docs/es/packages/next-intlayer/t.md +5 -137
  441. package/docs/es/packages/next-intlayer/useDictionary.md +3 -118
  442. package/docs/es/packages/next-intlayer/useIntlayer.md +3 -119
  443. package/docs/es/packages/next-intlayer/useLocale.md +1 -51
  444. package/docs/es/packages/react-intlayer/index.md +2 -60
  445. package/docs/es/packages/react-intlayer/t.md +4 -110
  446. package/docs/es/packages/react-intlayer/useDictionary.md +3 -113
  447. package/docs/es/packages/react-intlayer/useI18n.md +4 -107
  448. package/docs/es/packages/react-intlayer/useIntlayer.md +3 -110
  449. package/docs/es/packages/react-intlayer/useLocale.md +3 -103
  450. package/docs/es/per_locale_file.md +3 -34
  451. package/docs/fr/dictionary/condition.md +2 -116
  452. package/docs/fr/dictionary/content_file.md +2 -200
  453. package/docs/fr/dictionary/enumeration.md +2 -116
  454. package/docs/fr/dictionary/file.md +3 -100
  455. package/docs/fr/dictionary/function_fetching.md +3 -103
  456. package/docs/fr/dictionary/gender.md +2 -141
  457. package/docs/fr/dictionary/insertion.md +3 -57
  458. package/docs/fr/dictionary/nesting.md +3 -121
  459. package/docs/fr/dictionary/translation.md +4 -146
  460. package/docs/fr/interest_of_intlayer.md +2 -59
  461. package/docs/fr/intlayer_CMS.md +3 -227
  462. package/docs/fr/intlayer_visual_editor.md +1 -72
  463. package/docs/fr/intlayer_with_adonisjs.md +3 -107
  464. package/docs/fr/intlayer_with_analog.md +21 -41
  465. package/docs/fr/intlayer_with_angular.md +15 -41
  466. package/docs/fr/intlayer_with_astro.md +175 -49
  467. package/docs/fr/intlayer_with_astro_lit.md +612 -0
  468. package/docs/fr/intlayer_with_astro_preact.md +567 -0
  469. package/docs/fr/intlayer_with_astro_react.md +560 -0
  470. package/docs/fr/intlayer_with_astro_solid.md +560 -0
  471. package/docs/fr/intlayer_with_astro_svelte.md +564 -0
  472. package/docs/fr/intlayer_with_astro_vanilla.md +539 -0
  473. package/docs/fr/intlayer_with_astro_vue.md +582 -0
  474. package/docs/fr/intlayer_with_create_react_app.md +9 -645
  475. package/docs/fr/intlayer_with_express.md +4 -110
  476. package/docs/fr/intlayer_with_fastify.md +5 -193
  477. package/docs/fr/intlayer_with_hono.md +5 -158
  478. package/docs/fr/intlayer_with_lynx+react.md +2 -108
  479. package/docs/fr/intlayer_with_nestjs.md +3 -31
  480. package/docs/fr/intlayer_with_nextjs_14.md +51 -573
  481. package/docs/fr/intlayer_with_nextjs_15.md +64 -842
  482. package/docs/fr/intlayer_with_nextjs_16.md +44 -867
  483. package/docs/fr/intlayer_with_nextjs_compiler.md +2 -64
  484. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +11 -522
  485. package/docs/fr/intlayer_with_nextjs_page_router.md +37 -647
  486. package/docs/fr/intlayer_with_nuxt.md +16 -99
  487. package/docs/fr/intlayer_with_react_native+expo.md +31 -284
  488. package/docs/fr/intlayer_with_react_router_v7.md +15 -94
  489. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +15 -94
  490. package/docs/fr/intlayer_with_storybook.md +1 -37
  491. package/docs/fr/intlayer_with_svelte_kit.md +29 -71
  492. package/docs/fr/intlayer_with_tanstack+solid.md +14 -70
  493. package/docs/fr/intlayer_with_tanstack.md +14 -62
  494. package/docs/fr/intlayer_with_vanilla.md +28 -108
  495. package/docs/fr/intlayer_with_vite+lit.md +98 -162
  496. package/docs/fr/intlayer_with_vite+preact.md +100 -709
  497. package/docs/fr/intlayer_with_vite+react.md +104 -788
  498. package/docs/fr/intlayer_with_vite+react_compiler.md +87 -1
  499. package/docs/fr/intlayer_with_vite+solid.md +79 -152
  500. package/docs/fr/intlayer_with_vite+svelte.md +104 -132
  501. package/docs/fr/intlayer_with_vite+vanilla.md +105 -155
  502. package/docs/fr/intlayer_with_vite+vue.md +92 -251
  503. package/docs/fr/introduction.md +2 -60
  504. package/docs/fr/packages/express-intlayer/t.md +6 -184
  505. package/docs/fr/packages/hono-intlayer/t.md +3 -95
  506. package/docs/fr/packages/intlayer/getConfiguration.md +2 -54
  507. package/docs/fr/packages/intlayer/getEnumeration.md +2 -60
  508. package/docs/fr/packages/intlayer/getHTMLTextDir.md +2 -39
  509. package/docs/fr/packages/intlayer/getLocaleLang.md +1 -19
  510. package/docs/fr/packages/intlayer/getLocaleName.md +1 -43
  511. package/docs/fr/packages/intlayer/getLocalizedUrl.md +2 -45
  512. package/docs/fr/packages/intlayer/getMultilingualUrls.md +2 -60
  513. package/docs/fr/packages/intlayer/getPathWithoutLocale.md +1 -19
  514. package/docs/fr/packages/intlayer/getPrefix.md +1 -15
  515. package/docs/fr/packages/intlayer/getTranslation.md +3 -87
  516. package/docs/fr/packages/intlayer/getTranslationContent.md +3 -87
  517. package/docs/fr/packages/next-intlayer/t.md +5 -137
  518. package/docs/fr/packages/next-intlayer/useDictionary.md +3 -118
  519. package/docs/fr/packages/next-intlayer/useIntlayer.md +3 -117
  520. package/docs/fr/packages/next-intlayer/useLocale.md +1 -51
  521. package/docs/fr/packages/react-intlayer/index.md +2 -60
  522. package/docs/fr/packages/react-intlayer/t.md +4 -109
  523. package/docs/fr/packages/react-intlayer/useDictionary.md +3 -114
  524. package/docs/fr/packages/react-intlayer/useI18n.md +4 -107
  525. package/docs/fr/packages/react-intlayer/useIntlayer.md +3 -109
  526. package/docs/fr/packages/react-intlayer/useLocale.md +3 -103
  527. package/docs/fr/per_locale_file.md +3 -35
  528. package/docs/hi/dictionary/condition.md +2 -116
  529. package/docs/hi/dictionary/content_file.md +2 -201
  530. package/docs/hi/dictionary/enumeration.md +2 -116
  531. package/docs/hi/dictionary/file.md +3 -100
  532. package/docs/hi/dictionary/function_fetching.md +3 -103
  533. package/docs/hi/dictionary/gender.md +2 -141
  534. package/docs/hi/dictionary/insertion.md +3 -57
  535. package/docs/hi/dictionary/nesting.md +3 -121
  536. package/docs/hi/dictionary/translation.md +4 -149
  537. package/docs/hi/interest_of_intlayer.md +2 -58
  538. package/docs/hi/intlayer_CMS.md +3 -227
  539. package/docs/hi/intlayer_visual_editor.md +1 -72
  540. package/docs/hi/intlayer_with_adonisjs.md +3 -109
  541. package/docs/hi/intlayer_with_analog.md +21 -41
  542. package/docs/hi/intlayer_with_angular.md +15 -41
  543. package/docs/hi/intlayer_with_astro.md +183 -57
  544. package/docs/hi/intlayer_with_astro_lit.md +615 -0
  545. package/docs/hi/intlayer_with_astro_preact.md +564 -0
  546. package/docs/hi/intlayer_with_astro_react.md +562 -0
  547. package/docs/hi/intlayer_with_astro_solid.md +562 -0
  548. package/docs/hi/intlayer_with_astro_svelte.md +566 -0
  549. package/docs/hi/intlayer_with_astro_vanilla.md +543 -0
  550. package/docs/hi/intlayer_with_astro_vue.md +584 -0
  551. package/docs/hi/intlayer_with_create_react_app.md +8 -444
  552. package/docs/hi/intlayer_with_express.md +6 -195
  553. package/docs/hi/intlayer_with_fastify.md +5 -193
  554. package/docs/hi/intlayer_with_hono.md +2 -2
  555. package/docs/hi/intlayer_with_lynx+react.md +2 -116
  556. package/docs/hi/intlayer_with_nestjs.md +3 -31
  557. package/docs/hi/intlayer_with_nextjs_14.md +60 -512
  558. package/docs/hi/intlayer_with_nextjs_15.md +60 -822
  559. package/docs/hi/intlayer_with_nextjs_16.md +40 -883
  560. package/docs/hi/intlayer_with_nextjs_compiler.md +2 -62
  561. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +11 -498
  562. package/docs/hi/intlayer_with_nextjs_page_router.md +37 -648
  563. package/docs/hi/intlayer_with_nuxt.md +16 -101
  564. package/docs/hi/intlayer_with_react_native+expo.md +31 -284
  565. package/docs/hi/intlayer_with_react_router_v7.md +15 -91
  566. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +15 -91
  567. package/docs/hi/intlayer_with_storybook.md +1 -37
  568. package/docs/hi/intlayer_with_svelte_kit.md +29 -71
  569. package/docs/hi/intlayer_with_tanstack+solid.md +14 -70
  570. package/docs/hi/intlayer_with_tanstack.md +14 -62
  571. package/docs/hi/intlayer_with_vanilla.md +28 -108
  572. package/docs/hi/intlayer_with_vite+lit.md +98 -156
  573. package/docs/hi/intlayer_with_vite+preact.md +98 -619
  574. package/docs/hi/intlayer_with_vite+react.md +123 -816
  575. package/docs/hi/intlayer_with_vite+react_compiler.md +87 -1
  576. package/docs/hi/intlayer_with_vite+solid.md +79 -151
  577. package/docs/hi/intlayer_with_vite+svelte.md +104 -132
  578. package/docs/hi/intlayer_with_vite+vanilla.md +105 -87
  579. package/docs/hi/intlayer_with_vite+vue.md +92 -250
  580. package/docs/hi/introduction.md +2 -62
  581. package/docs/hi/packages/express-intlayer/t.md +6 -181
  582. package/docs/hi/packages/hono-intlayer/t.md +1 -45
  583. package/docs/hi/packages/intlayer/getConfiguration.md +2 -54
  584. package/docs/hi/packages/intlayer/getEnumeration.md +2 -60
  585. package/docs/hi/packages/intlayer/getHTMLTextDir.md +2 -38
  586. package/docs/hi/packages/intlayer/getLocaleLang.md +1 -19
  587. package/docs/hi/packages/intlayer/getLocaleName.md +1 -43
  588. package/docs/hi/packages/intlayer/getLocalizedUrl.md +2 -45
  589. package/docs/hi/packages/intlayer/getMultilingualUrls.md +2 -62
  590. package/docs/hi/packages/intlayer/getPathWithoutLocale.md +1 -19
  591. package/docs/hi/packages/intlayer/getPrefix.md +1 -19
  592. package/docs/hi/packages/intlayer/getTranslation.md +3 -87
  593. package/docs/hi/packages/intlayer/getTranslationContent.md +3 -86
  594. package/docs/hi/packages/intlayer/index.md +4 -129
  595. package/docs/hi/packages/next-intlayer/t.md +5 -138
  596. package/docs/hi/packages/next-intlayer/useDictionary.md +3 -118
  597. package/docs/hi/packages/next-intlayer/useIntlayer.md +3 -120
  598. package/docs/hi/packages/next-intlayer/useLocale.md +1 -51
  599. package/docs/hi/packages/react-intlayer/t.md +4 -106
  600. package/docs/hi/packages/react-intlayer/useDictionary.md +3 -115
  601. package/docs/hi/packages/react-intlayer/useI18n.md +3 -111
  602. package/docs/hi/packages/react-intlayer/useIntlayer.md +3 -113
  603. package/docs/hi/packages/react-intlayer/useLocale.md +3 -103
  604. package/docs/hi/per_locale_file.md +3 -34
  605. package/docs/id/dictionary/condition.md +2 -110
  606. package/docs/id/dictionary/content_file.md +2 -200
  607. package/docs/id/dictionary/enumeration.md +2 -116
  608. package/docs/id/dictionary/file.md +3 -105
  609. package/docs/id/dictionary/function_fetching.md +3 -103
  610. package/docs/id/dictionary/gender.md +2 -140
  611. package/docs/id/dictionary/insertion.md +3 -57
  612. package/docs/id/dictionary/nesting.md +3 -121
  613. package/docs/id/dictionary/translation.md +4 -147
  614. package/docs/id/interest_of_intlayer.md +2 -58
  615. package/docs/id/intlayer_CMS.md +3 -227
  616. package/docs/id/intlayer_visual_editor.md +1 -72
  617. package/docs/id/intlayer_with_adonisjs.md +3 -109
  618. package/docs/id/intlayer_with_analog.md +21 -41
  619. package/docs/id/intlayer_with_angular.md +15 -41
  620. package/docs/id/intlayer_with_astro.md +182 -64
  621. package/docs/id/intlayer_with_astro_lit.md +615 -0
  622. package/docs/id/intlayer_with_astro_preact.md +564 -0
  623. package/docs/id/intlayer_with_astro_react.md +562 -0
  624. package/docs/id/intlayer_with_astro_solid.md +562 -0
  625. package/docs/id/intlayer_with_astro_svelte.md +566 -0
  626. package/docs/id/intlayer_with_astro_vanilla.md +543 -0
  627. package/docs/id/intlayer_with_astro_vue.md +584 -0
  628. package/docs/id/intlayer_with_create_react_app.md +39 -694
  629. package/docs/id/intlayer_with_express.md +5 -181
  630. package/docs/id/intlayer_with_fastify.md +5 -193
  631. package/docs/id/intlayer_with_hono.md +2 -2
  632. package/docs/id/intlayer_with_lynx+react.md +3 -109
  633. package/docs/id/intlayer_with_nestjs.md +3 -31
  634. package/docs/id/intlayer_with_nextjs_14.md +59 -796
  635. package/docs/id/intlayer_with_nextjs_15.md +37 -815
  636. package/docs/id/intlayer_with_nextjs_16.md +41 -884
  637. package/docs/id/intlayer_with_nextjs_compiler.md +2 -62
  638. package/docs/id/intlayer_with_nextjs_no_locale_path.md +11 -501
  639. package/docs/id/intlayer_with_nextjs_page_router.md +102 -713
  640. package/docs/id/intlayer_with_nuxt.md +16 -99
  641. package/docs/id/intlayer_with_react_native+expo.md +31 -291
  642. package/docs/id/intlayer_with_react_router_v7.md +15 -99
  643. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +15 -99
  644. package/docs/id/intlayer_with_storybook.md +1 -37
  645. package/docs/id/intlayer_with_svelte_kit.md +29 -71
  646. package/docs/id/intlayer_with_tanstack+solid.md +14 -70
  647. package/docs/id/intlayer_with_tanstack.md +14 -62
  648. package/docs/id/intlayer_with_vanilla.md +28 -108
  649. package/docs/id/intlayer_with_vite+lit.md +98 -156
  650. package/docs/id/intlayer_with_vite+preact.md +103 -712
  651. package/docs/id/intlayer_with_vite+react.md +115 -803
  652. package/docs/id/intlayer_with_vite+react_compiler.md +87 -1
  653. package/docs/id/intlayer_with_vite+solid.md +79 -150
  654. package/docs/id/intlayer_with_vite+svelte.md +104 -132
  655. package/docs/id/intlayer_with_vite+vanilla.md +105 -155
  656. package/docs/id/intlayer_with_vite+vue.md +92 -258
  657. package/docs/id/introduction.md +2 -60
  658. package/docs/id/packages/express-intlayer/t.md +6 -181
  659. package/docs/id/packages/hono-intlayer/t.md +1 -45
  660. package/docs/id/packages/intlayer/getConfiguration.md +2 -54
  661. package/docs/id/packages/intlayer/getEnumeration.md +2 -60
  662. package/docs/id/packages/intlayer/getHTMLTextDir.md +2 -39
  663. package/docs/id/packages/intlayer/getLocaleLang.md +1 -19
  664. package/docs/id/packages/intlayer/getLocaleName.md +1 -44
  665. package/docs/id/packages/intlayer/getLocalizedUrl.md +2 -59
  666. package/docs/id/packages/intlayer/getMultilingualUrls.md +2 -64
  667. package/docs/id/packages/intlayer/getPathWithoutLocale.md +1 -19
  668. package/docs/id/packages/intlayer/getPrefix.md +1 -12
  669. package/docs/id/packages/intlayer/getTranslation.md +3 -87
  670. package/docs/id/packages/intlayer/getTranslationContent.md +3 -86
  671. package/docs/id/packages/next-intlayer/t.md +5 -137
  672. package/docs/id/packages/next-intlayer/useDictionary.md +3 -121
  673. package/docs/id/packages/next-intlayer/useIntlayer.md +3 -117
  674. package/docs/id/packages/next-intlayer/useLocale.md +1 -51
  675. package/docs/id/packages/react-intlayer/t.md +4 -109
  676. package/docs/id/packages/react-intlayer/useDictionary.md +3 -113
  677. package/docs/id/packages/react-intlayer/useI18n.md +4 -123
  678. package/docs/id/packages/react-intlayer/useIntlayer.md +3 -109
  679. package/docs/id/packages/react-intlayer/useLocale.md +3 -103
  680. package/docs/id/per_locale_file.md +3 -35
  681. package/docs/it/dictionary/condition.md +2 -116
  682. package/docs/it/dictionary/content_file.md +2 -201
  683. package/docs/it/dictionary/enumeration.md +2 -116
  684. package/docs/it/dictionary/file.md +3 -100
  685. package/docs/it/dictionary/function_fetching.md +3 -103
  686. package/docs/it/dictionary/gender.md +2 -140
  687. package/docs/it/dictionary/insertion.md +3 -57
  688. package/docs/it/dictionary/nesting.md +3 -121
  689. package/docs/it/dictionary/translation.md +4 -146
  690. package/docs/it/interest_of_intlayer.md +2 -59
  691. package/docs/it/intlayer_CMS.md +3 -227
  692. package/docs/it/intlayer_visual_editor.md +1 -72
  693. package/docs/it/intlayer_with_adonisjs.md +3 -109
  694. package/docs/it/intlayer_with_analog.md +21 -41
  695. package/docs/it/intlayer_with_angular.md +15 -41
  696. package/docs/it/intlayer_with_astro.md +187 -61
  697. package/docs/it/intlayer_with_astro_lit.md +615 -0
  698. package/docs/it/intlayer_with_astro_preact.md +564 -0
  699. package/docs/it/intlayer_with_astro_react.md +562 -0
  700. package/docs/it/intlayer_with_astro_solid.md +562 -0
  701. package/docs/it/intlayer_with_astro_svelte.md +566 -0
  702. package/docs/it/intlayer_with_astro_vanilla.md +543 -0
  703. package/docs/it/intlayer_with_astro_vue.md +584 -0
  704. package/docs/it/intlayer_with_create_react_app.md +9 -551
  705. package/docs/it/intlayer_with_express.md +5 -182
  706. package/docs/it/intlayer_with_fastify.md +5 -193
  707. package/docs/it/intlayer_with_hono.md +2 -2
  708. package/docs/it/intlayer_with_lynx+react.md +2 -116
  709. package/docs/it/intlayer_with_nestjs.md +3 -31
  710. package/docs/it/intlayer_with_nextjs_14.md +51 -575
  711. package/docs/it/intlayer_with_nextjs_15.md +55 -813
  712. package/docs/it/intlayer_with_nextjs_16.md +40 -883
  713. package/docs/it/intlayer_with_nextjs_compiler.md +2 -62
  714. package/docs/it/intlayer_with_nextjs_no_locale_path.md +11 -498
  715. package/docs/it/intlayer_with_nextjs_page_router.md +37 -650
  716. package/docs/it/intlayer_with_nuxt.md +16 -101
  717. package/docs/it/intlayer_with_react_native+expo.md +31 -286
  718. package/docs/it/intlayer_with_react_router_v7.md +15 -93
  719. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +15 -93
  720. package/docs/it/intlayer_with_storybook.md +1 -37
  721. package/docs/it/intlayer_with_svelte_kit.md +29 -71
  722. package/docs/it/intlayer_with_tanstack+solid.md +14 -70
  723. package/docs/it/intlayer_with_tanstack.md +14 -62
  724. package/docs/it/intlayer_with_vanilla.md +28 -108
  725. package/docs/it/intlayer_with_vite+lit.md +98 -162
  726. package/docs/it/intlayer_with_vite+preact.md +102 -711
  727. package/docs/it/intlayer_with_vite+react.md +112 -797
  728. package/docs/it/intlayer_with_vite+react_compiler.md +87 -1
  729. package/docs/it/intlayer_with_vite+solid.md +79 -151
  730. package/docs/it/intlayer_with_vite+svelte.md +104 -132
  731. package/docs/it/intlayer_with_vite+vanilla.md +105 -155
  732. package/docs/it/intlayer_with_vite+vue.md +80 -281
  733. package/docs/it/introduction.md +2 -60
  734. package/docs/it/packages/express-intlayer/t.md +6 -181
  735. package/docs/it/packages/hono-intlayer/t.md +1 -45
  736. package/docs/it/packages/intlayer/getConfiguration.md +2 -54
  737. package/docs/it/packages/intlayer/getEnumeration.md +2 -60
  738. package/docs/it/packages/intlayer/getHTMLTextDir.md +2 -38
  739. package/docs/it/packages/intlayer/getLocaleLang.md +1 -20
  740. package/docs/it/packages/intlayer/getLocaleName.md +1 -43
  741. package/docs/it/packages/intlayer/getLocalizedUrl.md +2 -45
  742. package/docs/it/packages/intlayer/getMultilingualUrls.md +2 -62
  743. package/docs/it/packages/intlayer/getPathWithoutLocale.md +1 -19
  744. package/docs/it/packages/intlayer/getPrefix.md +1 -12
  745. package/docs/it/packages/intlayer/getTranslation.md +3 -86
  746. package/docs/it/packages/intlayer/getTranslationContent.md +3 -87
  747. package/docs/it/packages/next-intlayer/t.md +5 -141
  748. package/docs/it/packages/next-intlayer/useDictionary.md +3 -118
  749. package/docs/it/packages/next-intlayer/useIntlayer.md +3 -117
  750. package/docs/it/packages/next-intlayer/useLocale.md +1 -51
  751. package/docs/it/packages/react-intlayer/t.md +4 -109
  752. package/docs/it/packages/react-intlayer/useDictionary.md +3 -115
  753. package/docs/it/packages/react-intlayer/useI18n.md +4 -107
  754. package/docs/it/packages/react-intlayer/useIntlayer.md +3 -109
  755. package/docs/it/packages/react-intlayer/useLocale.md +3 -103
  756. package/docs/it/per_locale_file.md +3 -35
  757. package/docs/ja/dictionary/condition.md +2 -116
  758. package/docs/ja/dictionary/content_file.md +2 -204
  759. package/docs/ja/dictionary/enumeration.md +2 -116
  760. package/docs/ja/dictionary/file.md +3 -100
  761. package/docs/ja/dictionary/function_fetching.md +3 -103
  762. package/docs/ja/dictionary/gender.md +2 -140
  763. package/docs/ja/dictionary/insertion.md +3 -57
  764. package/docs/ja/dictionary/nesting.md +3 -121
  765. package/docs/ja/dictionary/translation.md +6 -160
  766. package/docs/ja/interest_of_intlayer.md +2 -58
  767. package/docs/ja/intlayer_CMS.md +3 -227
  768. package/docs/ja/intlayer_visual_editor.md +1 -75
  769. package/docs/ja/intlayer_with_adonisjs.md +3 -109
  770. package/docs/ja/intlayer_with_analog.md +21 -41
  771. package/docs/ja/intlayer_with_angular.md +15 -41
  772. package/docs/ja/intlayer_with_astro.md +184 -53
  773. package/docs/ja/intlayer_with_astro_lit.md +618 -0
  774. package/docs/ja/intlayer_with_astro_preact.md +572 -0
  775. package/docs/ja/intlayer_with_astro_react.md +565 -0
  776. package/docs/ja/intlayer_with_astro_solid.md +565 -0
  777. package/docs/ja/intlayer_with_astro_svelte.md +569 -0
  778. package/docs/ja/intlayer_with_astro_vanilla.md +546 -0
  779. package/docs/ja/intlayer_with_astro_vue.md +587 -0
  780. package/docs/ja/intlayer_with_create_react_app.md +7 -387
  781. package/docs/ja/intlayer_with_express.md +5 -182
  782. package/docs/ja/intlayer_with_fastify.md +5 -193
  783. package/docs/ja/intlayer_with_hono.md +2 -2
  784. package/docs/ja/intlayer_with_lynx+react.md +2 -116
  785. package/docs/ja/intlayer_with_nestjs.md +3 -31
  786. package/docs/ja/intlayer_with_nextjs_14.md +54 -682
  787. package/docs/ja/intlayer_with_nextjs_15.md +56 -836
  788. package/docs/ja/intlayer_with_nextjs_16.md +40 -883
  789. package/docs/ja/intlayer_with_nextjs_compiler.md +2 -62
  790. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +12 -551
  791. package/docs/ja/intlayer_with_nextjs_page_router.md +73 -745
  792. package/docs/ja/intlayer_with_nuxt.md +16 -99
  793. package/docs/ja/intlayer_with_react_native+expo.md +31 -287
  794. package/docs/ja/intlayer_with_react_router_v7.md +32 -61
  795. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +15 -91
  796. package/docs/ja/intlayer_with_storybook.md +1 -37
  797. package/docs/ja/intlayer_with_svelte_kit.md +27 -69
  798. package/docs/ja/intlayer_with_tanstack+solid.md +14 -70
  799. package/docs/ja/intlayer_with_tanstack.md +13 -1
  800. package/docs/ja/intlayer_with_vanilla.md +28 -108
  801. package/docs/ja/intlayer_with_vite+lit.md +98 -162
  802. package/docs/ja/intlayer_with_vite+preact.md +88 -62
  803. package/docs/ja/intlayer_with_vite+react.md +88 -62
  804. package/docs/ja/intlayer_with_vite+react_compiler.md +87 -1
  805. package/docs/ja/intlayer_with_vite+solid.md +80 -161
  806. package/docs/ja/intlayer_with_vite+svelte.md +104 -132
  807. package/docs/ja/intlayer_with_vite+vanilla.md +105 -155
  808. package/docs/ja/intlayer_with_vite+vue.md +92 -264
  809. package/docs/ja/introduction.md +2 -59
  810. package/docs/ja/packages/express-intlayer/t.md +6 -188
  811. package/docs/ja/packages/hono-intlayer/t.md +1 -45
  812. package/docs/ja/packages/intlayer/getConfiguration.md +2 -54
  813. package/docs/ja/packages/intlayer/getEnumeration.md +2 -60
  814. package/docs/ja/packages/intlayer/getHTMLTextDir.md +2 -39
  815. package/docs/ja/packages/intlayer/getLocaleLang.md +1 -19
  816. package/docs/ja/packages/intlayer/getLocaleName.md +1 -43
  817. package/docs/ja/packages/intlayer/getLocalizedUrl.md +2 -45
  818. package/docs/ja/packages/intlayer/getMultilingualUrls.md +2 -62
  819. package/docs/ja/packages/intlayer/getPathWithoutLocale.md +1 -19
  820. package/docs/ja/packages/intlayer/getPrefix.md +1 -12
  821. package/docs/ja/packages/intlayer/getTranslation.md +3 -87
  822. package/docs/ja/packages/intlayer/getTranslationContent.md +3 -87
  823. package/docs/ja/packages/next-intlayer/t.md +5 -137
  824. package/docs/ja/packages/next-intlayer/useDictionary.md +3 -118
  825. package/docs/ja/packages/next-intlayer/useIntlayer.md +3 -117
  826. package/docs/ja/packages/next-intlayer/useLocale.md +1 -51
  827. package/docs/ja/packages/react-intlayer/t.md +4 -109
  828. package/docs/ja/packages/react-intlayer/useDictionary.md +3 -115
  829. package/docs/ja/packages/react-intlayer/useI18n.md +4 -107
  830. package/docs/ja/packages/react-intlayer/useIntlayer.md +2 -95
  831. package/docs/ja/packages/react-intlayer/useLocale.md +3 -103
  832. package/docs/ja/per_locale_file.md +3 -34
  833. package/docs/ko/cli/index.md +1 -1
  834. package/docs/ko/dictionary/condition.md +2 -116
  835. package/docs/ko/dictionary/content_file.md +2 -201
  836. package/docs/ko/dictionary/enumeration.md +2 -116
  837. package/docs/ko/dictionary/file.md +3 -100
  838. package/docs/ko/dictionary/function_fetching.md +3 -103
  839. package/docs/ko/dictionary/gender.md +2 -140
  840. package/docs/ko/dictionary/insertion.md +3 -57
  841. package/docs/ko/dictionary/nesting.md +3 -121
  842. package/docs/ko/dictionary/translation.md +5 -161
  843. package/docs/ko/interest_of_intlayer.md +2 -60
  844. package/docs/ko/intlayer_CMS.md +3 -227
  845. package/docs/ko/intlayer_visual_editor.md +1 -72
  846. package/docs/ko/intlayer_with_adonisjs.md +3 -109
  847. package/docs/ko/intlayer_with_analog.md +21 -41
  848. package/docs/ko/intlayer_with_angular.md +15 -41
  849. package/docs/ko/intlayer_with_astro.md +169 -58
  850. package/docs/ko/intlayer_with_astro_lit.md +598 -0
  851. package/docs/ko/intlayer_with_astro_preact.md +552 -0
  852. package/docs/ko/intlayer_with_astro_react.md +545 -0
  853. package/docs/ko/intlayer_with_astro_solid.md +545 -0
  854. package/docs/ko/intlayer_with_astro_svelte.md +549 -0
  855. package/docs/ko/intlayer_with_astro_vanilla.md +526 -0
  856. package/docs/ko/intlayer_with_astro_vue.md +567 -0
  857. package/docs/ko/intlayer_with_create_react_app.md +38 -693
  858. package/docs/ko/intlayer_with_express.md +5 -182
  859. package/docs/ko/intlayer_with_fastify.md +5 -193
  860. package/docs/ko/intlayer_with_hono.md +2 -2
  861. package/docs/ko/intlayer_with_lynx+react.md +2 -116
  862. package/docs/ko/intlayer_with_nestjs.md +3 -31
  863. package/docs/ko/intlayer_with_nextjs_14.md +55 -693
  864. package/docs/ko/intlayer_with_nextjs_15.md +73 -859
  865. package/docs/ko/intlayer_with_nextjs_16.md +40 -883
  866. package/docs/ko/intlayer_with_nextjs_compiler.md +2 -62
  867. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +13 -548
  868. package/docs/ko/intlayer_with_nextjs_page_router.md +66 -652
  869. package/docs/ko/intlayer_with_nuxt.md +16 -99
  870. package/docs/ko/intlayer_with_react_native+expo.md +31 -286
  871. package/docs/ko/intlayer_with_react_router_v7.md +15 -91
  872. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +15 -91
  873. package/docs/ko/intlayer_with_storybook.md +1 -37
  874. package/docs/ko/intlayer_with_svelte_kit.md +29 -71
  875. package/docs/ko/intlayer_with_tanstack+solid.md +14 -70
  876. package/docs/ko/intlayer_with_tanstack.md +13 -1
  877. package/docs/ko/intlayer_with_vanilla.md +28 -108
  878. package/docs/ko/intlayer_with_vite+lit.md +98 -162
  879. package/docs/ko/intlayer_with_vite+preact.md +102 -711
  880. package/docs/ko/intlayer_with_vite+react.md +123 -805
  881. package/docs/ko/intlayer_with_vite+react_compiler.md +87 -1
  882. package/docs/ko/intlayer_with_vite+solid.md +79 -151
  883. package/docs/ko/intlayer_with_vite+svelte.md +104 -130
  884. package/docs/ko/intlayer_with_vite+vanilla.md +105 -155
  885. package/docs/ko/intlayer_with_vite+vue.md +92 -269
  886. package/docs/ko/introduction.md +2 -60
  887. package/docs/ko/packages/express-intlayer/t.md +5 -158
  888. package/docs/ko/packages/hono-intlayer/t.md +1 -45
  889. package/docs/ko/packages/intlayer/getConfiguration.md +2 -54
  890. package/docs/ko/packages/intlayer/getEnumeration.md +2 -60
  891. package/docs/ko/packages/intlayer/getHTMLTextDir.md +2 -38
  892. package/docs/ko/packages/intlayer/getLocaleLang.md +1 -19
  893. package/docs/ko/packages/intlayer/getLocaleName.md +1 -43
  894. package/docs/ko/packages/intlayer/getLocalizedUrl.md +2 -45
  895. package/docs/ko/packages/intlayer/getMultilingualUrls.md +2 -64
  896. package/docs/ko/packages/intlayer/getPathWithoutLocale.md +1 -19
  897. package/docs/ko/packages/intlayer/getPrefix.md +1 -12
  898. package/docs/ko/packages/intlayer/getTranslation.md +3 -87
  899. package/docs/ko/packages/intlayer/getTranslationContent.md +3 -87
  900. package/docs/ko/packages/next-intlayer/t.md +5 -139
  901. package/docs/ko/packages/next-intlayer/useDictionary.md +3 -118
  902. package/docs/ko/packages/next-intlayer/useIntlayer.md +3 -117
  903. package/docs/ko/packages/next-intlayer/useLocale.md +1 -51
  904. package/docs/ko/packages/react-intlayer/t.md +5 -133
  905. package/docs/ko/packages/react-intlayer/useDictionary.md +3 -113
  906. package/docs/ko/packages/react-intlayer/useI18n.md +4 -107
  907. package/docs/ko/packages/react-intlayer/useIntlayer.md +3 -109
  908. package/docs/ko/packages/react-intlayer/useLocale.md +3 -103
  909. package/docs/ko/per_locale_file.md +3 -34
  910. package/docs/nl/intlayer_with_fastify.md +5 -193
  911. package/docs/nl/intlayer_with_hono.md +5 -158
  912. package/docs/nl/intlayer_with_storybook.md +1 -37
  913. package/docs/nl/intlayer_with_vanilla.md +28 -108
  914. package/docs/nl/intlayer_with_vite+lit.md +98 -156
  915. package/docs/nl/intlayer_with_vite+vanilla.md +105 -155
  916. package/docs/nl/introduction.md +2 -58
  917. package/docs/pl/dictionary/condition.md +2 -111
  918. package/docs/pl/dictionary/content_file.md +2 -205
  919. package/docs/pl/dictionary/enumeration.md +2 -116
  920. package/docs/pl/dictionary/file.md +3 -102
  921. package/docs/pl/dictionary/function_fetching.md +3 -103
  922. package/docs/pl/dictionary/gender.md +2 -141
  923. package/docs/pl/dictionary/insertion.md +3 -57
  924. package/docs/pl/dictionary/nesting.md +3 -121
  925. package/docs/pl/dictionary/translation.md +4 -147
  926. package/docs/pl/interest_of_intlayer.md +2 -58
  927. package/docs/pl/intlayer_CMS.md +3 -227
  928. package/docs/pl/intlayer_visual_editor.md +1 -72
  929. package/docs/pl/intlayer_with_adonisjs.md +3 -109
  930. package/docs/pl/intlayer_with_analog.md +21 -41
  931. package/docs/pl/intlayer_with_angular.md +15 -41
  932. package/docs/pl/intlayer_with_astro.md +179 -89
  933. package/docs/pl/intlayer_with_astro_lit.md +615 -0
  934. package/docs/pl/intlayer_with_astro_preact.md +564 -0
  935. package/docs/pl/intlayer_with_astro_react.md +562 -0
  936. package/docs/pl/intlayer_with_astro_solid.md +562 -0
  937. package/docs/pl/intlayer_with_astro_svelte.md +566 -0
  938. package/docs/pl/intlayer_with_astro_vanilla.md +543 -0
  939. package/docs/pl/intlayer_with_astro_vue.md +584 -0
  940. package/docs/pl/intlayer_with_create_react_app.md +39 -696
  941. package/docs/pl/intlayer_with_express.md +5 -180
  942. package/docs/pl/intlayer_with_fastify.md +5 -193
  943. package/docs/pl/intlayer_with_hono.md +2 -2
  944. package/docs/pl/intlayer_with_lynx+react.md +3 -109
  945. package/docs/pl/intlayer_with_nestjs.md +3 -31
  946. package/docs/pl/intlayer_with_nextjs_14.md +54 -789
  947. package/docs/pl/intlayer_with_nextjs_15.md +39 -843
  948. package/docs/pl/intlayer_with_nextjs_16.md +60 -903
  949. package/docs/pl/intlayer_with_nextjs_compiler.md +2 -62
  950. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +11 -499
  951. package/docs/pl/intlayer_with_nextjs_page_router.md +69 -751
  952. package/docs/pl/intlayer_with_nuxt.md +16 -100
  953. package/docs/pl/intlayer_with_react_native+expo.md +31 -292
  954. package/docs/pl/intlayer_with_react_router_v7.md +15 -101
  955. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +16 -94
  956. package/docs/pl/intlayer_with_storybook.md +1 -37
  957. package/docs/pl/intlayer_with_svelte_kit.md +29 -71
  958. package/docs/pl/intlayer_with_tanstack+solid.md +14 -70
  959. package/docs/pl/intlayer_with_tanstack.md +14 -62
  960. package/docs/pl/intlayer_with_vanilla.md +28 -108
  961. package/docs/pl/intlayer_with_vite+lit.md +98 -156
  962. package/docs/pl/intlayer_with_vite+preact.md +102 -711
  963. package/docs/pl/intlayer_with_vite+react.md +121 -840
  964. package/docs/pl/intlayer_with_vite+react_compiler.md +87 -1
  965. package/docs/pl/intlayer_with_vite+solid.md +79 -151
  966. package/docs/pl/intlayer_with_vite+svelte.md +104 -132
  967. package/docs/pl/intlayer_with_vite+vanilla.md +105 -155
  968. package/docs/pl/intlayer_with_vite+vue.md +92 -267
  969. package/docs/pl/introduction.md +2 -48
  970. package/docs/pl/packages/express-intlayer/t.md +6 -181
  971. package/docs/pl/packages/hono-intlayer/t.md +1 -45
  972. package/docs/pl/packages/intlayer/getConfiguration.md +2 -54
  973. package/docs/pl/packages/intlayer/getEnumeration.md +2 -60
  974. package/docs/pl/packages/intlayer/getHTMLTextDir.md +2 -38
  975. package/docs/pl/packages/intlayer/getLocaleLang.md +1 -19
  976. package/docs/pl/packages/intlayer/getLocaleName.md +1 -43
  977. package/docs/pl/packages/intlayer/getLocalizedUrl.md +2 -59
  978. package/docs/pl/packages/intlayer/getMultilingualUrls.md +2 -62
  979. package/docs/pl/packages/intlayer/getPathWithoutLocale.md +1 -19
  980. package/docs/pl/packages/intlayer/getPrefix.md +1 -19
  981. package/docs/pl/packages/intlayer/getTranslation.md +3 -87
  982. package/docs/pl/packages/intlayer/getTranslationContent.md +3 -87
  983. package/docs/pl/packages/next-intlayer/t.md +5 -137
  984. package/docs/pl/packages/next-intlayer/useDictionary.md +3 -120
  985. package/docs/pl/packages/next-intlayer/useIntlayer.md +2 -82
  986. package/docs/pl/packages/next-intlayer/useLocale.md +1 -51
  987. package/docs/pl/packages/react-intlayer/t.md +4 -109
  988. package/docs/pl/packages/react-intlayer/useDictionary.md +3 -115
  989. package/docs/pl/packages/react-intlayer/useI18n.md +3 -91
  990. package/docs/pl/packages/react-intlayer/useIntlayer.md +3 -114
  991. package/docs/pl/packages/react-intlayer/useLocale.md +3 -103
  992. package/docs/pl/per_locale_file.md +3 -34
  993. package/docs/pt/dictionary/condition.md +2 -116
  994. package/docs/pt/dictionary/content_file.md +2 -202
  995. package/docs/pt/dictionary/enumeration.md +2 -116
  996. package/docs/pt/dictionary/file.md +3 -101
  997. package/docs/pt/dictionary/function_fetching.md +3 -103
  998. package/docs/pt/dictionary/gender.md +2 -140
  999. package/docs/pt/dictionary/insertion.md +3 -57
  1000. package/docs/pt/dictionary/nesting.md +3 -121
  1001. package/docs/pt/dictionary/translation.md +4 -146
  1002. package/docs/pt/interest_of_intlayer.md +2 -60
  1003. package/docs/pt/intlayer_CMS.md +3 -227
  1004. package/docs/pt/intlayer_visual_editor.md +1 -72
  1005. package/docs/pt/intlayer_with_adonisjs.md +3 -109
  1006. package/docs/pt/intlayer_with_analog.md +21 -41
  1007. package/docs/pt/intlayer_with_angular.md +15 -41
  1008. package/docs/pt/intlayer_with_astro.md +184 -58
  1009. package/docs/pt/intlayer_with_astro_lit.md +597 -0
  1010. package/docs/pt/intlayer_with_astro_preact.md +564 -0
  1011. package/docs/pt/intlayer_with_astro_react.md +562 -0
  1012. package/docs/pt/intlayer_with_astro_solid.md +562 -0
  1013. package/docs/pt/intlayer_with_astro_svelte.md +566 -0
  1014. package/docs/pt/intlayer_with_astro_vanilla.md +543 -0
  1015. package/docs/pt/intlayer_with_astro_vue.md +584 -0
  1016. package/docs/pt/intlayer_with_create_react_app.md +53 -654
  1017. package/docs/pt/intlayer_with_express.md +5 -183
  1018. package/docs/pt/intlayer_with_fastify.md +5 -193
  1019. package/docs/pt/intlayer_with_hono.md +2 -2
  1020. package/docs/pt/intlayer_with_lynx+react.md +2 -116
  1021. package/docs/pt/intlayer_with_nestjs.md +3 -33
  1022. package/docs/pt/intlayer_with_nextjs_14.md +51 -575
  1023. package/docs/pt/intlayer_with_nextjs_15.md +56 -819
  1024. package/docs/pt/intlayer_with_nextjs_16.md +40 -883
  1025. package/docs/pt/intlayer_with_nextjs_compiler.md +2 -62
  1026. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +11 -499
  1027. package/docs/pt/intlayer_with_nextjs_page_router.md +87 -707
  1028. package/docs/pt/intlayer_with_nuxt.md +16 -98
  1029. package/docs/pt/intlayer_with_react_native+expo.md +31 -283
  1030. package/docs/pt/intlayer_with_react_router_v7.md +3 -98
  1031. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +15 -91
  1032. package/docs/pt/intlayer_with_storybook.md +1 -37
  1033. package/docs/pt/intlayer_with_svelte_kit.md +29 -71
  1034. package/docs/pt/intlayer_with_tanstack+solid.md +14 -70
  1035. package/docs/pt/intlayer_with_tanstack.md +14 -62
  1036. package/docs/pt/intlayer_with_vanilla.md +28 -108
  1037. package/docs/pt/intlayer_with_vite+lit.md +98 -162
  1038. package/docs/pt/intlayer_with_vite+preact.md +100 -709
  1039. package/docs/pt/intlayer_with_vite+react.md +104 -797
  1040. package/docs/pt/intlayer_with_vite+react_compiler.md +87 -1
  1041. package/docs/pt/intlayer_with_vite+solid.md +79 -149
  1042. package/docs/pt/intlayer_with_vite+svelte.md +104 -132
  1043. package/docs/pt/intlayer_with_vite+vanilla.md +105 -155
  1044. package/docs/pt/intlayer_with_vite+vue.md +80 -263
  1045. package/docs/pt/introduction.md +2 -59
  1046. package/docs/pt/packages/express-intlayer/t.md +6 -181
  1047. package/docs/pt/packages/hono-intlayer/t.md +1 -45
  1048. package/docs/pt/packages/intlayer/getConfiguration.md +2 -54
  1049. package/docs/pt/packages/intlayer/getEnumeration.md +2 -60
  1050. package/docs/pt/packages/intlayer/getHTMLTextDir.md +2 -38
  1051. package/docs/pt/packages/intlayer/getLocaleLang.md +1 -19
  1052. package/docs/pt/packages/intlayer/getLocaleName.md +1 -43
  1053. package/docs/pt/packages/intlayer/getLocalizedUrl.md +2 -45
  1054. package/docs/pt/packages/intlayer/getMultilingualUrls.md +2 -60
  1055. package/docs/pt/packages/intlayer/getPathWithoutLocale.md +1 -19
  1056. package/docs/pt/packages/intlayer/getPrefix.md +1 -19
  1057. package/docs/pt/packages/intlayer/getTranslation.md +3 -87
  1058. package/docs/pt/packages/intlayer/getTranslationContent.md +3 -87
  1059. package/docs/pt/packages/next-intlayer/t.md +5 -137
  1060. package/docs/pt/packages/next-intlayer/useDictionary.md +3 -118
  1061. package/docs/pt/packages/next-intlayer/useIntlayer.md +3 -119
  1062. package/docs/pt/packages/next-intlayer/useLocale.md +1 -51
  1063. package/docs/pt/packages/react-intlayer/t.md +4 -109
  1064. package/docs/pt/packages/react-intlayer/useDictionary.md +3 -113
  1065. package/docs/pt/packages/react-intlayer/useI18n.md +4 -107
  1066. package/docs/pt/packages/react-intlayer/useIntlayer.md +3 -114
  1067. package/docs/pt/packages/react-intlayer/useLocale.md +3 -103
  1068. package/docs/pt/per_locale_file.md +3 -35
  1069. package/docs/ru/dictionary/condition.md +2 -116
  1070. package/docs/ru/dictionary/content_file.md +2 -204
  1071. package/docs/ru/dictionary/enumeration.md +2 -116
  1072. package/docs/ru/dictionary/file.md +3 -102
  1073. package/docs/ru/dictionary/function_fetching.md +3 -103
  1074. package/docs/ru/dictionary/gender.md +2 -140
  1075. package/docs/ru/dictionary/insertion.md +3 -57
  1076. package/docs/ru/dictionary/nesting.md +3 -121
  1077. package/docs/ru/dictionary/translation.md +4 -147
  1078. package/docs/ru/interest_of_intlayer.md +2 -60
  1079. package/docs/ru/intlayer_CMS.md +3 -225
  1080. package/docs/ru/intlayer_visual_editor.md +1 -72
  1081. package/docs/ru/intlayer_with_adonisjs.md +3 -109
  1082. package/docs/ru/intlayer_with_analog.md +21 -41
  1083. package/docs/ru/intlayer_with_angular.md +15 -41
  1084. package/docs/ru/intlayer_with_astro.md +172 -45
  1085. package/docs/ru/intlayer_with_astro_lit.md +614 -0
  1086. package/docs/ru/intlayer_with_astro_preact.md +568 -0
  1087. package/docs/ru/intlayer_with_astro_react.md +561 -0
  1088. package/docs/ru/intlayer_with_astro_solid.md +561 -0
  1089. package/docs/ru/intlayer_with_astro_svelte.md +565 -0
  1090. package/docs/ru/intlayer_with_astro_vanilla.md +542 -0
  1091. package/docs/ru/intlayer_with_astro_vue.md +583 -0
  1092. package/docs/ru/intlayer_with_create_react_app.md +9 -677
  1093. package/docs/ru/intlayer_with_express.md +4 -112
  1094. package/docs/ru/intlayer_with_fastify.md +5 -193
  1095. package/docs/ru/intlayer_with_hono.md +2 -2
  1096. package/docs/ru/intlayer_with_lynx+react.md +2 -116
  1097. package/docs/ru/intlayer_with_nestjs.md +3 -33
  1098. package/docs/ru/intlayer_with_nextjs_14.md +50 -534
  1099. package/docs/ru/intlayer_with_nextjs_15.md +60 -834
  1100. package/docs/ru/intlayer_with_nextjs_16.md +60 -903
  1101. package/docs/ru/intlayer_with_nextjs_compiler.md +2 -62
  1102. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +11 -542
  1103. package/docs/ru/intlayer_with_nextjs_page_router.md +38 -610
  1104. package/docs/ru/intlayer_with_nuxt.md +16 -100
  1105. package/docs/ru/intlayer_with_react_native+expo.md +31 -286
  1106. package/docs/ru/intlayer_with_react_router_v7.md +15 -91
  1107. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +15 -91
  1108. package/docs/ru/intlayer_with_storybook.md +1 -37
  1109. package/docs/ru/intlayer_with_svelte_kit.md +29 -71
  1110. package/docs/ru/intlayer_with_tanstack+solid.md +14 -70
  1111. package/docs/ru/intlayer_with_tanstack.md +14 -62
  1112. package/docs/ru/intlayer_with_vanilla.md +28 -108
  1113. package/docs/ru/intlayer_with_vite+lit.md +98 -162
  1114. package/docs/ru/intlayer_with_vite+preact.md +102 -711
  1115. package/docs/ru/intlayer_with_vite+react.md +111 -807
  1116. package/docs/ru/intlayer_with_vite+react_compiler.md +87 -1
  1117. package/docs/ru/intlayer_with_vite+solid.md +79 -153
  1118. package/docs/ru/intlayer_with_vite+svelte.md +104 -132
  1119. package/docs/ru/intlayer_with_vite+vanilla.md +105 -155
  1120. package/docs/ru/intlayer_with_vite+vue.md +92 -266
  1121. package/docs/ru/introduction.md +2 -62
  1122. package/docs/ru/packages/express-intlayer/t.md +6 -183
  1123. package/docs/ru/packages/hono-intlayer/t.md +1 -45
  1124. package/docs/ru/packages/intlayer/getConfiguration.md +2 -54
  1125. package/docs/ru/packages/intlayer/getEnumeration.md +2 -60
  1126. package/docs/ru/packages/intlayer/getHTMLTextDir.md +2 -38
  1127. package/docs/ru/packages/intlayer/getLocaleLang.md +1 -19
  1128. package/docs/ru/packages/intlayer/getLocaleName.md +1 -43
  1129. package/docs/ru/packages/intlayer/getLocalizedUrl.md +2 -45
  1130. package/docs/ru/packages/intlayer/getMultilingualUrls.md +2 -62
  1131. package/docs/ru/packages/intlayer/getPathWithoutLocale.md +1 -19
  1132. package/docs/ru/packages/intlayer/getPrefix.md +1 -15
  1133. package/docs/ru/packages/intlayer/getTranslation.md +3 -87
  1134. package/docs/ru/packages/intlayer/getTranslationContent.md +3 -87
  1135. package/docs/ru/packages/next-intlayer/t.md +5 -139
  1136. package/docs/ru/packages/next-intlayer/useDictionary.md +3 -119
  1137. package/docs/ru/packages/next-intlayer/useIntlayer.md +3 -120
  1138. package/docs/ru/packages/next-intlayer/useLocale.md +1 -51
  1139. package/docs/ru/packages/react-intlayer/t.md +4 -111
  1140. package/docs/ru/packages/react-intlayer/useDictionary.md +3 -115
  1141. package/docs/ru/packages/react-intlayer/useI18n.md +4 -107
  1142. package/docs/ru/packages/react-intlayer/useIntlayer.md +3 -118
  1143. package/docs/ru/packages/react-intlayer/useLocale.md +2 -58
  1144. package/docs/ru/per_locale_file.md +3 -35
  1145. package/docs/tr/dictionary/condition.md +2 -116
  1146. package/docs/tr/dictionary/content_file.md +2 -201
  1147. package/docs/tr/dictionary/enumeration.md +2 -116
  1148. package/docs/tr/dictionary/file.md +3 -100
  1149. package/docs/tr/dictionary/function_fetching.md +3 -103
  1150. package/docs/tr/dictionary/gender.md +2 -140
  1151. package/docs/tr/dictionary/insertion.md +3 -57
  1152. package/docs/tr/dictionary/nesting.md +3 -121
  1153. package/docs/tr/dictionary/translation.md +4 -119
  1154. package/docs/tr/interest_of_intlayer.md +2 -58
  1155. package/docs/tr/intlayer_CMS.md +3 -227
  1156. package/docs/tr/intlayer_visual_editor.md +1 -72
  1157. package/docs/tr/intlayer_with_adonisjs.md +3 -109
  1158. package/docs/tr/intlayer_with_analog.md +21 -41
  1159. package/docs/tr/intlayer_with_angular.md +15 -41
  1160. package/docs/tr/intlayer_with_astro.md +187 -61
  1161. package/docs/tr/intlayer_with_astro_lit.md +615 -0
  1162. package/docs/tr/intlayer_with_astro_preact.md +564 -0
  1163. package/docs/tr/intlayer_with_astro_react.md +562 -0
  1164. package/docs/tr/intlayer_with_astro_solid.md +562 -0
  1165. package/docs/tr/intlayer_with_astro_svelte.md +566 -0
  1166. package/docs/tr/intlayer_with_astro_vanilla.md +543 -0
  1167. package/docs/tr/intlayer_with_astro_vue.md +584 -0
  1168. package/docs/tr/intlayer_with_create_react_app.md +33 -685
  1169. package/docs/tr/intlayer_with_express.md +5 -179
  1170. package/docs/tr/intlayer_with_fastify.md +5 -193
  1171. package/docs/tr/intlayer_with_hono.md +2 -2
  1172. package/docs/tr/intlayer_with_lynx+react.md +2 -108
  1173. package/docs/tr/intlayer_with_nestjs.md +3 -31
  1174. package/docs/tr/intlayer_with_nextjs_14.md +12 -431
  1175. package/docs/tr/intlayer_with_nextjs_15.md +59 -815
  1176. package/docs/tr/intlayer_with_nextjs_16.md +60 -903
  1177. package/docs/tr/intlayer_with_nextjs_compiler.md +2 -62
  1178. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +11 -498
  1179. package/docs/tr/intlayer_with_nextjs_page_router.md +37 -622
  1180. package/docs/tr/intlayer_with_nuxt.md +16 -98
  1181. package/docs/tr/intlayer_with_react_native+expo.md +31 -265
  1182. package/docs/tr/intlayer_with_react_router_v7.md +15 -91
  1183. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +15 -91
  1184. package/docs/tr/intlayer_with_storybook.md +1 -37
  1185. package/docs/tr/intlayer_with_svelte_kit.md +29 -71
  1186. package/docs/tr/intlayer_with_tanstack+solid.md +14 -70
  1187. package/docs/tr/intlayer_with_tanstack.md +14 -62
  1188. package/docs/tr/intlayer_with_vanilla.md +28 -108
  1189. package/docs/tr/intlayer_with_vite+lit.md +98 -156
  1190. package/docs/tr/intlayer_with_vite+preact.md +102 -711
  1191. package/docs/tr/intlayer_with_vite+react.md +107 -791
  1192. package/docs/tr/intlayer_with_vite+react_compiler.md +87 -1
  1193. package/docs/tr/intlayer_with_vite+solid.md +79 -149
  1194. package/docs/tr/intlayer_with_vite+svelte.md +104 -132
  1195. package/docs/tr/intlayer_with_vite+vanilla.md +105 -155
  1196. package/docs/tr/intlayer_with_vite+vue.md +92 -196
  1197. package/docs/tr/introduction.md +2 -58
  1198. package/docs/tr/packages/express-intlayer/t.md +6 -181
  1199. package/docs/tr/packages/hono-intlayer/t.md +1 -45
  1200. package/docs/tr/packages/intlayer/getConfiguration.md +2 -54
  1201. package/docs/tr/packages/intlayer/getEnumeration.md +2 -60
  1202. package/docs/tr/packages/intlayer/getHTMLTextDir.md +2 -38
  1203. package/docs/tr/packages/intlayer/getLocaleLang.md +1 -19
  1204. package/docs/tr/packages/intlayer/getLocaleName.md +1 -43
  1205. package/docs/tr/packages/intlayer/getLocalizedUrl.md +3 -79
  1206. package/docs/tr/packages/intlayer/getMultilingualUrls.md +2 -60
  1207. package/docs/tr/packages/intlayer/getPathWithoutLocale.md +1 -19
  1208. package/docs/tr/packages/intlayer/getPrefix.md +1 -15
  1209. package/docs/tr/packages/intlayer/getTranslation.md +3 -87
  1210. package/docs/tr/packages/intlayer/getTranslationContent.md +3 -87
  1211. package/docs/tr/packages/next-intlayer/t.md +5 -137
  1212. package/docs/tr/packages/next-intlayer/useDictionary.md +3 -118
  1213. package/docs/tr/packages/next-intlayer/useIntlayer.md +3 -117
  1214. package/docs/tr/packages/next-intlayer/useLocale.md +1 -51
  1215. package/docs/tr/packages/react-intlayer/t.md +4 -109
  1216. package/docs/tr/packages/react-intlayer/useDictionary.md +3 -113
  1217. package/docs/tr/packages/react-intlayer/useI18n.md +8 -214
  1218. package/docs/tr/packages/react-intlayer/useIntlayer.md +3 -109
  1219. package/docs/tr/packages/react-intlayer/useLocale.md +3 -103
  1220. package/docs/tr/per_locale_file.md +3 -33
  1221. package/docs/uk/dictionary/condition.md +2 -116
  1222. package/docs/uk/dictionary/content_file.md +2 -218
  1223. package/docs/uk/dictionary/enumeration.md +2 -116
  1224. package/docs/uk/dictionary/file.md +3 -100
  1225. package/docs/uk/dictionary/function_fetching.md +3 -103
  1226. package/docs/uk/dictionary/gender.md +2 -140
  1227. package/docs/uk/dictionary/insertion.md +3 -57
  1228. package/docs/uk/dictionary/nesting.md +3 -121
  1229. package/docs/uk/dictionary/translation.md +4 -156
  1230. package/docs/uk/interest_of_intlayer.md +2 -60
  1231. package/docs/uk/intlayer_CMS.md +3 -227
  1232. package/docs/uk/intlayer_visual_editor.md +1 -72
  1233. package/docs/uk/intlayer_with_adonisjs.md +3 -109
  1234. package/docs/uk/intlayer_with_analog.md +21 -41
  1235. package/docs/uk/intlayer_with_angular.md +15 -41
  1236. package/docs/uk/intlayer_with_astro.md +187 -70
  1237. package/docs/uk/intlayer_with_astro_lit.md +615 -0
  1238. package/docs/uk/intlayer_with_astro_preact.md +564 -0
  1239. package/docs/uk/intlayer_with_astro_react.md +562 -0
  1240. package/docs/uk/intlayer_with_astro_solid.md +562 -0
  1241. package/docs/uk/intlayer_with_astro_svelte.md +566 -0
  1242. package/docs/uk/intlayer_with_astro_vanilla.md +543 -0
  1243. package/docs/uk/intlayer_with_astro_vue.md +584 -0
  1244. package/docs/uk/intlayer_with_create_react_app.md +39 -697
  1245. package/docs/uk/intlayer_with_express.md +5 -184
  1246. package/docs/uk/intlayer_with_fastify.md +5 -193
  1247. package/docs/uk/intlayer_with_hono.md +2 -2
  1248. package/docs/uk/intlayer_with_lynx+react.md +3 -118
  1249. package/docs/uk/intlayer_with_nestjs.md +3 -31
  1250. package/docs/uk/intlayer_with_nextjs_14.md +54 -797
  1251. package/docs/uk/intlayer_with_nextjs_15.md +42 -708
  1252. package/docs/uk/intlayer_with_nextjs_16.md +60 -903
  1253. package/docs/uk/intlayer_with_nextjs_compiler.md +2 -62
  1254. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +11 -499
  1255. package/docs/uk/intlayer_with_nextjs_page_router.md +37 -659
  1256. package/docs/uk/intlayer_with_nuxt.md +16 -106
  1257. package/docs/uk/intlayer_with_react_native+expo.md +31 -293
  1258. package/docs/uk/intlayer_with_react_router_v7.md +15 -99
  1259. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +15 -93
  1260. package/docs/uk/intlayer_with_storybook.md +1 -37
  1261. package/docs/uk/intlayer_with_svelte_kit.md +28 -70
  1262. package/docs/uk/intlayer_with_tanstack+solid.md +14 -70
  1263. package/docs/uk/intlayer_with_tanstack.md +14 -62
  1264. package/docs/uk/intlayer_with_vanilla.md +28 -108
  1265. package/docs/uk/intlayer_with_vite+lit.md +98 -156
  1266. package/docs/uk/intlayer_with_vite+preact.md +105 -714
  1267. package/docs/uk/intlayer_with_vite+react.md +113 -822
  1268. package/docs/uk/intlayer_with_vite+react_compiler.md +87 -1
  1269. package/docs/uk/intlayer_with_vite+solid.md +79 -151
  1270. package/docs/uk/intlayer_with_vite+svelte.md +104 -132
  1271. package/docs/uk/intlayer_with_vite+vanilla.md +105 -155
  1272. package/docs/uk/intlayer_with_vite+vue.md +92 -268
  1273. package/docs/uk/introduction.md +2 -61
  1274. package/docs/uk/packages/express-intlayer/t.md +6 -187
  1275. package/docs/uk/packages/hono-intlayer/t.md +1 -45
  1276. package/docs/uk/packages/intlayer/getConfiguration.md +2 -54
  1277. package/docs/uk/packages/intlayer/getEnumeration.md +2 -60
  1278. package/docs/uk/packages/intlayer/getHTMLTextDir.md +2 -38
  1279. package/docs/uk/packages/intlayer/getLocaleLang.md +1 -19
  1280. package/docs/uk/packages/intlayer/getLocaleName.md +1 -43
  1281. package/docs/uk/packages/intlayer/getLocalizedUrl.md +3 -71
  1282. package/docs/uk/packages/intlayer/getMultilingualUrls.md +3 -79
  1283. package/docs/uk/packages/intlayer/getPathWithoutLocale.md +1 -19
  1284. package/docs/uk/packages/intlayer/getPrefix.md +1 -15
  1285. package/docs/uk/packages/intlayer/getTranslation.md +3 -87
  1286. package/docs/uk/packages/intlayer/getTranslationContent.md +3 -87
  1287. package/docs/uk/packages/next-intlayer/t.md +5 -141
  1288. package/docs/uk/packages/next-intlayer/useDictionary.md +3 -126
  1289. package/docs/uk/packages/next-intlayer/useIntlayer.md +3 -117
  1290. package/docs/uk/packages/next-intlayer/useLocale.md +1 -51
  1291. package/docs/uk/packages/react-intlayer/t.md +4 -113
  1292. package/docs/uk/packages/react-intlayer/useDictionary.md +3 -118
  1293. package/docs/uk/packages/react-intlayer/useI18n.md +4 -107
  1294. package/docs/uk/packages/react-intlayer/useIntlayer.md +3 -109
  1295. package/docs/uk/packages/react-intlayer/useLocale.md +3 -103
  1296. package/docs/uk/per_locale_file.md +3 -34
  1297. package/docs/ur/intlayer_with_fastify.md +5 -193
  1298. package/docs/ur/intlayer_with_hono.md +5 -158
  1299. package/docs/ur/intlayer_with_storybook.md +1 -37
  1300. package/docs/ur/intlayer_with_vanilla.md +28 -108
  1301. package/docs/ur/intlayer_with_vite+lit.md +98 -156
  1302. package/docs/ur/intlayer_with_vite+vanilla.md +105 -155
  1303. package/docs/ur/introduction.md +2 -58
  1304. package/docs/vi/dictionary/condition.md +2 -116
  1305. package/docs/vi/dictionary/content_file.md +2 -200
  1306. package/docs/vi/dictionary/enumeration.md +2 -116
  1307. package/docs/vi/dictionary/file.md +3 -102
  1308. package/docs/vi/dictionary/function_fetching.md +3 -103
  1309. package/docs/vi/dictionary/gender.md +2 -140
  1310. package/docs/vi/dictionary/insertion.md +3 -57
  1311. package/docs/vi/dictionary/nesting.md +3 -121
  1312. package/docs/vi/dictionary/translation.md +4 -146
  1313. package/docs/vi/interest_of_intlayer.md +2 -60
  1314. package/docs/vi/intlayer_CMS.md +3 -227
  1315. package/docs/vi/intlayer_visual_editor.md +1 -72
  1316. package/docs/vi/intlayer_with_adonisjs.md +3 -109
  1317. package/docs/vi/intlayer_with_analog.md +21 -41
  1318. package/docs/vi/intlayer_with_angular.md +15 -41
  1319. package/docs/vi/intlayer_with_astro.md +184 -66
  1320. package/docs/vi/intlayer_with_astro_lit.md +615 -0
  1321. package/docs/vi/intlayer_with_astro_preact.md +564 -0
  1322. package/docs/vi/intlayer_with_astro_react.md +562 -0
  1323. package/docs/vi/intlayer_with_astro_solid.md +562 -0
  1324. package/docs/vi/intlayer_with_astro_svelte.md +566 -0
  1325. package/docs/vi/intlayer_with_astro_vanilla.md +543 -0
  1326. package/docs/vi/intlayer_with_astro_vue.md +584 -0
  1327. package/docs/vi/intlayer_with_create_react_app.md +39 -693
  1328. package/docs/vi/intlayer_with_express.md +5 -179
  1329. package/docs/vi/intlayer_with_fastify.md +5 -193
  1330. package/docs/vi/intlayer_with_hono.md +2 -2
  1331. package/docs/vi/intlayer_with_lynx+react.md +3 -111
  1332. package/docs/vi/intlayer_with_nestjs.md +3 -31
  1333. package/docs/vi/intlayer_with_nextjs_14.md +54 -785
  1334. package/docs/vi/intlayer_with_nextjs_15.md +34 -1171
  1335. package/docs/vi/intlayer_with_nextjs_16.md +60 -903
  1336. package/docs/vi/intlayer_with_nextjs_compiler.md +2 -62
  1337. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +10 -516
  1338. package/docs/vi/intlayer_with_nextjs_page_router.md +69 -742
  1339. package/docs/vi/intlayer_with_nuxt.md +16 -98
  1340. package/docs/vi/intlayer_with_react_native+expo.md +31 -293
  1341. package/docs/vi/intlayer_with_react_router_v7.md +15 -101
  1342. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +15 -101
  1343. package/docs/vi/intlayer_with_storybook.md +1 -37
  1344. package/docs/vi/intlayer_with_svelte_kit.md +29 -71
  1345. package/docs/vi/intlayer_with_tanstack+solid.md +14 -70
  1346. package/docs/vi/intlayer_with_tanstack.md +14 -62
  1347. package/docs/vi/intlayer_with_vanilla.md +28 -108
  1348. package/docs/vi/intlayer_with_vite+lit.md +98 -156
  1349. package/docs/vi/intlayer_with_vite+preact.md +103 -712
  1350. package/docs/vi/intlayer_with_vite+react.md +105 -787
  1351. package/docs/vi/intlayer_with_vite+react_compiler.md +87 -1
  1352. package/docs/vi/intlayer_with_vite+solid.md +79 -150
  1353. package/docs/vi/intlayer_with_vite+svelte.md +104 -132
  1354. package/docs/vi/intlayer_with_vite+vanilla.md +105 -155
  1355. package/docs/vi/intlayer_with_vite+vue.md +92 -252
  1356. package/docs/vi/introduction.md +2 -58
  1357. package/docs/vi/packages/express-intlayer/t.md +6 -181
  1358. package/docs/vi/packages/hono-intlayer/t.md +1 -45
  1359. package/docs/vi/packages/intlayer/getConfiguration.md +2 -54
  1360. package/docs/vi/packages/intlayer/getEnumeration.md +2 -62
  1361. package/docs/vi/packages/intlayer/getHTMLTextDir.md +2 -38
  1362. package/docs/vi/packages/intlayer/getLocaleLang.md +1 -19
  1363. package/docs/vi/packages/intlayer/getLocaleName.md +1 -54
  1364. package/docs/vi/packages/intlayer/getLocalizedUrl.md +2 -59
  1365. package/docs/vi/packages/intlayer/getMultilingualUrls.md +2 -62
  1366. package/docs/vi/packages/intlayer/getPathWithoutLocale.md +1 -19
  1367. package/docs/vi/packages/intlayer/getPrefix.md +1 -15
  1368. package/docs/vi/packages/intlayer/getTranslation.md +3 -98
  1369. package/docs/vi/packages/intlayer/getTranslationContent.md +3 -86
  1370. package/docs/vi/packages/next-intlayer/t.md +5 -137
  1371. package/docs/vi/packages/next-intlayer/useDictionary.md +3 -123
  1372. package/docs/vi/packages/next-intlayer/useIntlayer.md +3 -117
  1373. package/docs/vi/packages/next-intlayer/useLocale.md +1 -51
  1374. package/docs/vi/packages/react-intlayer/t.md +4 -111
  1375. package/docs/vi/packages/react-intlayer/useDictionary.md +3 -114
  1376. package/docs/vi/packages/react-intlayer/useI18n.md +5 -124
  1377. package/docs/vi/packages/react-intlayer/useIntlayer.md +3 -114
  1378. package/docs/vi/packages/react-intlayer/useLocale.md +3 -103
  1379. package/docs/vi/per_locale_file.md +3 -35
  1380. package/docs/zh/dictionary/condition.md +2 -116
  1381. package/docs/zh/dictionary/content_file.md +2 -201
  1382. package/docs/zh/dictionary/enumeration.md +2 -116
  1383. package/docs/zh/dictionary/file.md +3 -101
  1384. package/docs/zh/dictionary/function_fetching.md +3 -103
  1385. package/docs/zh/dictionary/gender.md +2 -140
  1386. package/docs/zh/dictionary/insertion.md +3 -57
  1387. package/docs/zh/dictionary/nesting.md +3 -121
  1388. package/docs/zh/dictionary/translation.md +5 -159
  1389. package/docs/zh/interest_of_intlayer.md +2 -59
  1390. package/docs/zh/intlayer_CMS.md +3 -224
  1391. package/docs/zh/intlayer_visual_editor.md +1 -72
  1392. package/docs/zh/intlayer_with_adonisjs.md +3 -109
  1393. package/docs/zh/intlayer_with_analog.md +21 -41
  1394. package/docs/zh/intlayer_with_angular.md +15 -41
  1395. package/docs/zh/intlayer_with_astro.md +169 -58
  1396. package/docs/zh/intlayer_with_astro_lit.md +598 -0
  1397. package/docs/zh/intlayer_with_astro_preact.md +547 -0
  1398. package/docs/zh/intlayer_with_astro_react.md +545 -0
  1399. package/docs/zh/intlayer_with_astro_solid.md +545 -0
  1400. package/docs/zh/intlayer_with_astro_svelte.md +549 -0
  1401. package/docs/zh/intlayer_with_astro_vanilla.md +526 -0
  1402. package/docs/zh/intlayer_with_astro_vue.md +567 -0
  1403. package/docs/zh/intlayer_with_create_react_app.md +33 -680
  1404. package/docs/zh/intlayer_with_express.md +5 -182
  1405. package/docs/zh/intlayer_with_fastify.md +5 -193
  1406. package/docs/zh/intlayer_with_hono.md +5 -158
  1407. package/docs/zh/intlayer_with_lynx+react.md +2 -116
  1408. package/docs/zh/intlayer_with_nestjs.md +3 -31
  1409. package/docs/zh/intlayer_with_nextjs_14.md +56 -597
  1410. package/docs/zh/intlayer_with_nextjs_15.md +56 -818
  1411. package/docs/zh/intlayer_with_nextjs_16.md +60 -903
  1412. package/docs/zh/intlayer_with_nextjs_compiler.md +2 -62
  1413. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +11 -541
  1414. package/docs/zh/intlayer_with_nextjs_page_router.md +39 -636
  1415. package/docs/zh/intlayer_with_nuxt.md +16 -101
  1416. package/docs/zh/intlayer_with_react_native+expo.md +31 -286
  1417. package/docs/zh/intlayer_with_react_router_v7.md +15 -92
  1418. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +15 -92
  1419. package/docs/zh/intlayer_with_storybook.md +1 -37
  1420. package/docs/zh/intlayer_with_svelte_kit.md +29 -71
  1421. package/docs/zh/intlayer_with_tanstack+solid.md +14 -70
  1422. package/docs/zh/intlayer_with_tanstack.md +14 -2
  1423. package/docs/zh/intlayer_with_vanilla.md +28 -108
  1424. package/docs/zh/intlayer_with_vite+lit.md +98 -162
  1425. package/docs/zh/intlayer_with_vite+preact.md +104 -713
  1426. package/docs/zh/intlayer_with_vite+react.md +106 -786
  1427. package/docs/zh/intlayer_with_vite+react_compiler.md +87 -1
  1428. package/docs/zh/intlayer_with_vite+solid.md +79 -151
  1429. package/docs/zh/intlayer_with_vite+svelte.md +104 -132
  1430. package/docs/zh/intlayer_with_vite+vanilla.md +105 -155
  1431. package/docs/zh/intlayer_with_vite+vue.md +92 -256
  1432. package/docs/zh/introduction.md +2 -59
  1433. package/docs/zh/packages/express-intlayer/t.md +6 -183
  1434. package/docs/zh/packages/hono-intlayer/t.md +2 -70
  1435. package/docs/zh/packages/intlayer/getConfiguration.md +2 -54
  1436. package/docs/zh/packages/intlayer/getEnumeration.md +2 -60
  1437. package/docs/zh/packages/intlayer/getHTMLTextDir.md +2 -39
  1438. package/docs/zh/packages/intlayer/getLocaleLang.md +1 -19
  1439. package/docs/zh/packages/intlayer/getLocaleName.md +1 -43
  1440. package/docs/zh/packages/intlayer/getLocalizedUrl.md +2 -45
  1441. package/docs/zh/packages/intlayer/getMultilingualUrls.md +2 -64
  1442. package/docs/zh/packages/intlayer/getPathWithoutLocale.md +1 -19
  1443. package/docs/zh/packages/intlayer/getPrefix.md +1 -12
  1444. package/docs/zh/packages/intlayer/getTranslation.md +3 -87
  1445. package/docs/zh/packages/intlayer/getTranslationContent.md +3 -87
  1446. package/docs/zh/packages/next-intlayer/t.md +5 -139
  1447. package/docs/zh/packages/next-intlayer/useDictionary.md +3 -120
  1448. package/docs/zh/packages/next-intlayer/useIntlayer.md +3 -119
  1449. package/docs/zh/packages/next-intlayer/useLocale.md +1 -51
  1450. package/docs/zh/packages/react-intlayer/t.md +4 -107
  1451. package/docs/zh/packages/react-intlayer/useDictionary.md +3 -116
  1452. package/docs/zh/packages/react-intlayer/useI18n.md +4 -107
  1453. package/docs/zh/packages/react-intlayer/useIntlayer.md +3 -109
  1454. package/docs/zh/packages/react-intlayer/useLocale.md +3 -103
  1455. package/docs/zh/per_locale_file.md +3 -35
  1456. package/package.json +6 -6
  1457. package/src/common.ts +2 -1
  1458. package/src/generated/docs.entry.ts +140 -0
@@ -16,6 +16,7 @@ slugs:
16
16
  - nextjs
17
17
  - 15
18
18
  applicationTemplate: https://github.com/aymericzip/intlayer-next-15-template
19
+ applicationShowcase: https://next-15-intlayer-template-xt83.vercel.app
19
20
  youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
20
21
  history:
21
22
  - version: 7.5.9
@@ -89,13 +90,24 @@ Với Intlayer, bạn có thể:
89
90
  <Tab label="Code" value="code">
90
91
 
91
92
  <iframe
92
- src="https://stackblitz.com/github/aymericzip/intlayer-next-15-template?embed=1&ctl=1&file=intlayer.config.ts"
93
+ src="https://ide.intlayer.org/aymericzip/intlayer-next-15-template?file=intlayer.config.ts"
93
94
  className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
94
95
  title="Demo CodeSandbox - Cách quốc tế hóa ứng dụng của bạn bằng Intlayer"
95
96
  sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
96
97
  loading="lazy"
97
98
  />
98
99
 
100
+ </Tab>
101
+ <Tab label="Bản demo" value="demo">
102
+
103
+ <iframe
104
+ src="https://next-15-intlayer-template-xt83.vercel.app"
105
+ className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
106
+ title="Bản demo — intlayer-next-15-template"
107
+ sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
108
+ loading="lazy"
109
+ />
110
+
99
111
  </Tab>
100
112
  </Tabs>
101
113
 
@@ -165,7 +177,7 @@ Here is the final structure that we will make:
165
177
 
166
178
  Tạo một file cấu hình để cấu hình các ngôn ngữ của ứng dụng của bạn:
167
179
 
168
- ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
180
+ ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
169
181
  import { Locales, type IntlayerConfig } from "intlayer";
170
182
 
171
183
  const config: IntlayerConfig = {
@@ -183,51 +195,13 @@ const config: IntlayerConfig = {
183
195
  export default config;
184
196
  ```
185
197
 
186
- ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
187
- import { Locales } from "intlayer";
188
-
189
- /** @type {import('intlayer').IntlayerConfig} */
190
- const config = {
191
- internationalization: {
192
- locales: [
193
- Locales.ENGLISH,
194
- Locales.FRENCH,
195
- Locales.SPANISH,
196
- // Các ngôn ngữ khác của bạn
197
- ],
198
- defaultLocale: Locales.ENGLISH,
199
- },
200
- };
201
-
202
- export default config;
203
- ```
204
-
205
- ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
206
- const { Locales } = require("intlayer");
207
-
208
- /** @type {import('intlayer').IntlayerConfig} */
209
- const config = {
210
- internationalization: {
211
- locales: [
212
- Locales.ENGLISH,
213
- Locales.FRENCH,
214
- Locales.SPANISH,
215
- // Các locale khác của bạn
216
- ],
217
- defaultLocale: Locales.ENGLISH,
218
- },
219
- };
220
-
221
- module.exports = config;
222
- ```
223
-
224
198
  > Thông qua tệp cấu hình này, bạn có thể thiết lập URL địa phương hóa, chuyển hướng middleware, tên cookie, vị trí và phần mở rộng của các khai báo nội dung, tắt các log của Intlayer trên console, và nhiều hơn nữa. Để xem danh sách đầy đủ các tham số có sẵn, hãy tham khảo [tài liệu cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md).
225
199
 
226
200
  ### Bước 3: Tích hợp Intlayer vào cấu hình Next.js của bạn
227
201
 
228
202
  Cấu hình thiết lập Next.js của bạn để sử dụng Intlayer:
229
203
 
230
- ```typescript fileName="next.config.ts" codeFormat="typescript"
204
+ ```typescript fileName="next.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
231
205
  import type { NextConfig } from "next";
232
206
  import { withIntlayer } from "next-intlayer/server";
233
207
 
@@ -238,28 +212,6 @@ const nextConfig: NextConfig = {
238
212
  export default withIntlayer(nextConfig);
239
213
  ```
240
214
 
241
- ```typescript fileName="next.config.mjs" codeFormat="esm"
242
- import { withIntlayer } from "next-intlayer/server";
243
-
244
- /** @type {import('next').NextConfig} */
245
- const nextConfig = {
246
- /* các tùy chọn cấu hình ở đây */
247
- };
248
-
249
- export default withIntlayer(nextConfig);
250
- ```
251
-
252
- ```typescript fileName="next.config.cjs" codeFormat="commonjs"
253
- const { withIntlayer } = require("next-intlayer/server");
254
-
255
- /** @type {import('next').NextConfig} */
256
- const nextConfig = {
257
- /* các tùy chọn cấu hình ở đây */
258
- };
259
-
260
- module.exports = withIntlayer(nextConfig);
261
- ```
262
-
263
215
  > Plugin Next.js `withIntlayer()` được sử dụng để tích hợp Intlayer với Next.js. Nó đảm bảo việc xây dựng các tệp khai báo nội dung và giám sát chúng trong chế độ phát triển. Nó định nghĩa các biến môi trường Intlayer trong môi trường [Webpack](https://webpack.js.org/) hoặc [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). Ngoài ra, nó cung cấp các bí danh để tối ưu hiệu suất và đảm bảo tương thích với các thành phần server.
264
216
 
265
217
  > Hàm `withIntlayer()` là một hàm promise. Nó cho phép chuẩn bị các từ điển intlayer trước khi quá trình build bắt đầu. Nếu bạn muốn sử dụng nó cùng với các plugin khác, bạn có thể dùng await. Ví dụ:
@@ -327,7 +279,7 @@ module.exports = {
327
279
 
328
280
  Để triển khai dynamic routing, cung cấp đường dẫn cho locale bằng cách thêm một layout mới trong thư mục `[locale]` của bạn:
329
281
 
330
- ````tsx fileName="src/app/[locale]/layout.tsx" codeFormat="typescript"
282
+ ````tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
331
283
  import type { NextLayoutIntlayer } from "next-intlayer";
332
284
  import { Inter } from "next/font/google";
333
285
  import { getHTMLTextDir } from "intlayer";
@@ -342,7 +294,7 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
342
294
  Để triển khai routing động, cung cấp đường dẫn cho locale bằng cách thêm một layout mới trong thư mục `[locale]` của bạn:
343
295
 
344
296
  ```tsx fileName="src/app/[locale]/layout.tsx" codeFormat="typescript"
345
- import type { NextLayoutIntlayer } from "next-intlayer";
297
+ import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
346
298
  import { Inter } from "next/font/google";
347
299
  import { getHTMLTextDir } from "intlayer";
348
300
 
@@ -352,7 +304,11 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
352
304
  const { locale } = await params;
353
305
  return (
354
306
  <html lang={locale} dir={getHTMLTextDir(locale)}>
355
- <body className={inter.className}>{children}</body>
307
+ <body className={inter.className}>
308
+ <IntlayerClientProvider locale={locale}>
309
+ {children}
310
+ </IntlayerClientProvider>
311
+ </body>
356
312
  </html>
357
313
  );
358
314
  };
@@ -360,41 +316,6 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
360
316
  export default LocaleLayout;
361
317
  ````
362
318
 
363
- ```jsx fileName="src/app/[locale]/layout.mjx" codeFormat="esm"
364
- import { getHTMLTextDir } from "intlayer";
365
-
366
- const inter = Inter({ subsets: ["latin"] });
367
-
368
- const LocaleLayout = async ({ children, params: { locale } }) => {
369
- const { locale } = await params;
370
- return (
371
- <html lang={locale} dir={getHTMLTextDir(locale)}>
372
- <body className={inter.className}>{children}</body>
373
- </html>
374
- );
375
- };
376
-
377
- export default LocaleLayout;
378
- ```
379
-
380
- ```jsx fileName="src/app/[locale]/layout.csx" codeFormat="commonjs"
381
- const { Inter } = require("next/font/google");
382
- const { getHTMLTextDir } = require("intlayer");
383
-
384
- const inter = Inter({ subsets: ["latin"] });
385
-
386
- const LocaleLayout = async ({ children, params: { locale } }) => {
387
- const { locale } = await params;
388
- return (
389
- <html lang={locale} dir={getHTMLTextDir(locale)}>
390
- <body className={inter.className}>{children}</body>
391
- </html>
392
- );
393
- };
394
-
395
- module.exports = LocaleLayout;
396
- ```
397
-
398
319
  > Đoạn đường dẫn `[locale]` được sử dụng để định nghĩa locale. Ví dụ: `/en-US/about` sẽ tương ứng với `en-US` và `/fr/about` sẽ tương ứng với `fr`.
399
320
 
400
321
  const inter = Inter({ subsets: ["latin"] });
@@ -404,7 +325,9 @@ const { locale } = await params;
404
325
  return (
405
326
 
406
327
  <html lang={locale} dir={getHTMLTextDir(locale)}>
407
- <body className={inter.className}>{children}</body>
328
+ <body className={inter.className}>
329
+ {children}
330
+ </body>
408
331
  </html>
409
332
  );
410
333
  };
@@ -457,7 +380,7 @@ module.exports = { default: LocaleLayout, generateStaticParams };
457
380
 
458
381
  Tạo và quản lý các khai báo nội dung để lưu trữ bản dịch:
459
382
 
460
- ```tsx fileName="src/app/[locale]/page.content.ts" contentDeclarationFormat="typescript"
383
+ ```tsx fileName="src/app/[locale]/page.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
461
384
  import { t, type Dictionary } from "intlayer";
462
385
 
463
386
  const pageContent = {
@@ -477,50 +400,6 @@ const pageContent = {
477
400
  export default pageContent;
478
401
  ```
479
402
 
480
- ```javascript fileName="src/app/[locale]/page.content.mjs" contentDeclarationFormat="esm"
481
- import { t } from "intlayer";
482
-
483
- /** @type {import('intlayer').Dictionary} */
484
- // Nội dung trang với các bản dịch
485
- const pageContent = {
486
- key: "page",
487
- content: {
488
- getStarted: {
489
- main: t({
490
- en: "Get started by editing",
491
- fr: "Commencez par éditer",
492
- es: "Comience por editar",
493
- }),
494
- pageLink: "src/app/page.tsx",
495
- },
496
- },
497
- };
498
-
499
- export default pageContent;
500
- ```
501
-
502
- ```javascript fileName="src/app/[locale]/page.content.cjs" contentDeclarationFormat="commonjs"
503
- const { t } = require("intlayer");
504
-
505
- /** @type {import('intlayer').Dictionary} */
506
- const pageContent = {
507
- key: "page",
508
- content: {
509
- getStarted: {
510
- main: t({
511
- en: "Get started by editing",
512
- fr: "Commencez par éditer",
513
- es: "Comience por editar",
514
- vi: "Bắt đầu bằng cách chỉnh sửa",
515
- }),
516
- pageLink: "src/app/page.tsx",
517
- },
518
- },
519
- };
520
-
521
- module.exports = pageContent;
522
- ```
523
-
524
403
  ```json fileName="src/app/[locale]/page.content.json" contentDeclarationFormat="json"
525
404
  {
526
405
  "$schema": "https://intlayer.org/schema.json",
@@ -548,11 +427,11 @@ module.exports = pageContent;
548
427
 
549
428
  Truy cập các từ điển nội dung của bạn trong toàn bộ ứng dụng:
550
429
 
551
- ```tsx fileName="src/app/[locale]/page.tsx" codeFormat="typescript"
430
+ ```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
552
431
  import type { FC } from "react";
553
432
  import { ClientComponentExample } from "@components/ClientComponentExample";
554
433
  import { ServerComponentExample } from "@components/ServerComponentExample";
555
- import { type NextPageIntlayer, IntlayerClientProvider } from "next-intlayer";
434
+ import { type NextPageIntlayer } from "next-intlayer";
556
435
  import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
557
436
 
558
437
  const PageContent: FC = () => {
@@ -575,45 +454,7 @@ const Page: NextPageIntlayer = async ({ params }) => {
575
454
  <PageContent />
576
455
  <ServerComponentExample />
577
456
 
578
- <IntlayerClientProvider locale={locale}>
579
- <ClientComponentExample />
580
- </IntlayerClientProvider>
581
- </IntlayerServerProvider>
582
- );
583
- };
584
-
585
- export default Page;
586
- ```
587
-
588
- ```jsx fileName="src/app/[locale]/page.mjx" codeFormat="esm"
589
- import { ClientComponentExample } from "@components/ClientComponentExample";
590
- import { ServerComponentExample } from "@components/ServerComponentExample";
591
- import { IntlayerClientProvider } from "next-intlayer";
592
- import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
593
-
594
- const PageContent = () => {
595
- const content = useIntlayer("page");
596
-
597
- return (
598
- <>
599
- <p>{content.getStarted.main}</p> {/* Nội dung chính để bắt đầu */}
600
- <code>{content.getStarted.pageLink}</code>{" "}
601
- {/* Liên kết trang để bắt đầu */}
602
- </>
603
- );
604
- };
605
-
606
- const Page = async ({ params }) => {
607
- const { locale } = await params;
608
-
609
- return (
610
- <IntlayerServerProvider locale={locale}>
611
- <PageContent />
612
- <ServerComponentExample />
613
-
614
- <IntlayerClientProvider locale={locale}>
615
- <ClientComponentExample />
616
- </IntlayerClientProvider>
457
+ <ClientComponentExample />
617
458
  </IntlayerServerProvider>
618
459
  );
619
460
  };
@@ -621,39 +462,6 @@ const Page = async ({ params }) => {
621
462
  export default Page;
622
463
  ```
623
464
 
624
- ```jsx fileName="src/app/[locale]/page.csx" codeFormat="commonjs"
625
- import { ClientComponentExample } from "@components/ClientComponentExample";
626
- import { ServerComponentExample } from "@components/ServerComponentExample";
627
- import { IntlayerClientProvider } from "next-intlayer";
628
- import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
629
-
630
- const PageContent = () => {
631
- const content = useIntlayer("page");
632
-
633
- return (
634
- <>
635
- <p>{content.getStarted.main}</p>
636
- <code>{content.getStarted.pageLink}</code>
637
- </>
638
- );
639
- };
640
-
641
- const Page = async ({ params }) => {
642
- const { locale } = await params;
643
-
644
- return (
645
- <IntlayerServerProvider locale={locale}>
646
- <PageContent />
647
- <ServerComponentExample />
648
-
649
- <IntlayerClientProvider locale={locale}>
650
- <ClientComponentExample />
651
- </IntlayerClientProvider>
652
- </IntlayerServerProvider>
653
- );
654
- };
655
- ```
656
-
657
465
  - **`IntlayerClientProvider`** được sử dụng để cung cấp locale cho các component phía client. Nó có thể được đặt trong bất kỳ component cha nào, bao gồm cả layout. Tuy nhiên, việc đặt nó trong layout được khuyến nghị vì Next.js chia sẻ mã layout giữa các trang, giúp hiệu quả hơn. Bằng cách sử dụng `IntlayerClientProvider` trong layout, bạn tránh việc khởi tạo lại cho mỗi trang, cải thiện hiệu suất và duy trì ngữ cảnh localization nhất quán trong toàn bộ ứng dụng của bạn.
658
466
  - **`IntlayerServerProvider`** được sử dụng để cung cấp locale cho các component con phía server. Nó không thể được đặt trong layout.
659
467
 
@@ -661,7 +469,7 @@ const Page = async ({ params }) => {
661
469
 
662
470
  > Layout và trang không thể chia sẻ một context server chung vì hệ thống context server dựa trên kho dữ liệu theo từng yêu cầu (qua cơ chế [React's cache](https://react.dev/reference/react/cache)), dẫn đến mỗi "context" được tạo lại cho các phân đoạn khác nhau của ứng dụng. Việc đặt provider trong một layout dùng chung sẽ phá vỡ sự cô lập này, ngăn cản việc truyền đúng các giá trị context server đến các component server của bạn.
663
471
 
664
- ```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat="typescript"
472
+ ```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
665
473
  "use client";
666
474
 
667
475
  import type { FC } from "react";
@@ -679,41 +487,7 @@ export const ClientComponentExample: FC = () => {
679
487
  };
680
488
  ```
681
489
 
682
- ```jsx {3,6} fileName="src/components/ClientComponentExample.mjx" codeFormat="esm"
683
- "use client";
684
-
685
- import { useIntlayer } from "next-intlayer";
686
-
687
- const ClientComponentExample = () => {
688
- const content = useIntlayer("client-component-example"); // Tạo khai báo nội dung liên quan
689
-
690
- return (
691
- <div>
692
- <h2>{content.title}</h2>
693
- <p>{content.content}</p>
694
- </div>
695
- );
696
- };
697
- ```
698
-
699
- ```jsx {3,6} fileName="src/components/ClientComponentExample.csx" codeFormat="commonjs"
700
- "use client";
701
-
702
- const { useIntlayer } = require("next-intlayer");
703
-
704
- const ClientComponentExample = () => {
705
- const content = useIntlayer("client-component-example"); // Tạo khai báo nội dung liên quan
706
-
707
- return (
708
- <div>
709
- <h2>{content.title}</h2>
710
- <p>{content.content}</p>
711
- </div>
712
- );
713
- };
714
- ```
715
-
716
- ```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat="typescript"
490
+ ```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
717
491
  import type { FC } from "react";
718
492
  import { useIntlayer } from "next-intlayer/server";
719
493
 
@@ -729,36 +503,6 @@ export const ServerComponentExample: FC = () => {
729
503
  };
730
504
  ```
731
505
 
732
- ```jsx {1} fileName="src/components/ServerComponentExample.mjx" codeFormat="esm"
733
- import { useIntlayer } from "next-intlayer/server";
734
-
735
- const ServerComponentExample = () => {
736
- const content = useIntlayer("server-component-example"); // Tạo khai báo nội dung liên quan
737
-
738
- return (
739
- <div>
740
- <h2>{content.title}</h2>
741
- <p>{content.content}</p>
742
- </div>
743
- );
744
- };
745
- ```
746
-
747
- ```jsx {1} fileName="src/components/ServerComponentExample.csx" codeFormat="commonjs"
748
- const { useIntlayer } = require("next-intlayer/server");
749
-
750
- const ServerComponentExample = () => {
751
- const content = useIntlayer("server-component-example"); // Tạo khai báo nội dung liên quan
752
-
753
- return (
754
- <div>
755
- <h2>{content.title}</h2>
756
- <p>{content.content}</p>
757
- </div>
758
- );
759
- };
760
- ```
761
-
762
506
  > Nếu bạn muốn sử dụng nội dung của mình trong một thuộc tính `string`, như `alt`, `title`, `href`, `aria-label`, v.v., bạn phải gọi giá trị của hàm, ví dụ:
763
507
 
764
508
  > ```jsx
@@ -771,16 +515,7 @@ const ServerComponentExample = () => {
771
515
 
772
516
  Thiết lập middleware để phát hiện ngôn ngữ ưu tiên của người dùng:
773
517
 
774
- ```typescript fileName="src/middleware.ts" codeFormat="typescript"
775
- export { intlayerMiddleware as middleware } from "next-intlayer/middleware";
776
-
777
- export const config = {
778
- matcher:
779
- "/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
780
- };
781
- ```
782
-
783
- ```javascript fileName="src/middleware.mjs" codeFormat="esm"
518
+ ```typescript fileName="src/middleware.ts" codeFormat={["typescript", "esm", "commonjs"]}
784
519
  export { intlayerMiddleware as middleware } from "next-intlayer/middleware";
785
520
 
786
521
  export const config = {
@@ -789,17 +524,6 @@ export const config = {
789
524
  };
790
525
  ```
791
526
 
792
- ```javascript fileName="src/middleware.cjs" codeFormat="commonjs"
793
- const { intlayerMiddleware } = require("next-intlayer/middleware");
794
-
795
- const config = {
796
- matcher:
797
- "/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
798
- };
799
-
800
- module.exports = { middleware: intlayerMiddleware, config };
801
- ```
802
-
803
527
  > `intlayerMiddleware` được sử dụng để phát hiện ngôn ngữ ưu tiên của người dùng và chuyển hướng họ đến URL phù hợp như được chỉ định trong [cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md). Ngoài ra, nó còn cho phép lưu ngôn ngữ ưu tiên của người dùng trong cookie.
804
528
 
805
529
  > Nếu bạn cần kết hợp nhiều middleware với nhau (ví dụ, `intlayerMiddleware` cùng với middleware xác thực hoặc middleware tùy chỉnh), Intlayer hiện cung cấp một helper gọi là `multipleMiddlewares`.
@@ -821,7 +545,7 @@ export const middleware = multipleMiddlewares([
821
545
 
822
546
  Trong trường hợp bạn muốn quốc tế hóa metadata của mình, chẳng hạn như tiêu đề trang, bạn có thể sử dụng hàm `generateMetadata` do Next.js cung cấp. Bên trong, bạn có thể lấy nội dung từ hàm `getIntlayer` để dịch metadata của bạn.
823
547
 
824
- ```typescript fileName="src/app/[locale]/metadata.content.ts" contentDeclarationFormat="typescript"
548
+ ```typescript fileName="src/app/[locale]/metadata.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
825
549
  import { type Dictionary, t } from "intlayer";
826
550
  import { Metadata } from "next";
827
551
 
@@ -846,68 +570,6 @@ const metadataContent = {
846
570
  export default metadataContent;
847
571
  ```
848
572
 
849
- ```javascript fileName="src/app/[locale]/metadata.content.mjs" contentDeclarationFormat="esm"
850
- import { t } from "intlayer";
851
-
852
- /** @type {import('intlayer').Dictionary<import('next').Metadata>} */
853
- const metadataContent = {
854
- key: "page-metadata",
855
- content: {
856
- title: t({
857
- en: "Create Next App",
858
- fr: "Créer une application Next.js",
859
- es: "Crear una aplicación Next.js",
860
- vi: "Tạo ứng dụng Next",
861
- }),
862
- description: t({
863
- en: "Generated by create next app",
864
- fr: "Généré par create next app",
865
- es: "Generado por create next app",
866
- vi: "Được tạo bởi create next app",
867
- }),
868
- },
869
- };
870
-
871
- export default metadataContent;
872
- ```
873
-
874
- ```javascript fileName="src/app/[locale]/metadata.content.cjs" contentDeclarationFormat="commonjs"
875
- const { t } = require("intlayer");
876
-
877
- /** @type {import('intlayer').Dictionary<import('next').Metadata>} */
878
- const metadataContent = {
879
- key: "page-metadata",
880
- content: {
881
- title: t({
882
- en: "Create Next App",
883
- fr: "Créer une application Next.js",
884
- es: "Crear una aplicación Next.js",
885
- vi: "Tạo ứng dụng Next",
886
- }),
887
- description: t({
888
- en: "Generated by create next app",
889
- fr: "Généré par create next app",
890
- es: "Generado por create next app",
891
- vi: "Được tạo bởi create next app",
892
- }),
893
- },
894
- };
895
-
896
- module.exports = metadataContent;
897
- fr: "Créer une application Next.js",
898
- es: "Crear una aplicación Next.js",
899
- }),
900
- description: t({
901
- en: "Generated by create next app",
902
- fr: "Généré par create next app",
903
- es: "Generado por create next app",
904
- }),
905
- },
906
- };
907
-
908
- module.exports = metadataContent;
909
- ```
910
-
911
573
  ```json fileName="src/app/[locale]/metadata.content.json" contentDeclarationFormat="json"
912
574
  {
913
575
  "key": "page-metadata",
@@ -934,7 +596,7 @@ module.exports = metadataContent;
934
596
  };
935
597
  ```
936
598
 
937
- ````typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat="typescript"
599
+ ````typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
938
600
  import { getIntlayer, getMultilingualUrls } from "intlayer";
939
601
  import type { Metadata } from "next";
940
602
  import type { LocalPromiseParams } from "next-intlayer";
@@ -979,802 +641,3 @@ export const generateMetadata = async ({
979
641
 
980
642
  // ... Phần còn lại của mã
981
643
  ````
982
-
983
- ````javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
984
- import { getIntlayer, getMultilingualUrls } from "intlayer";
985
-
986
- export const generateMetadata = async ({ params }) => {
987
- const { locale } = await params;
988
-
989
- const metadata = getIntlayer("page-metadata", locale);
990
-
991
- /**
992
- * Tạo một đối tượng chứa tất cả các url cho mỗi locale.
993
- *
994
- * Ví dụ:
995
- * ```ts
996
- * getMultilingualUrls('/about');
997
- *
998
- * // Trả về
999
- * // {
1000
- * // en: '/about',
1001
- * // fr: '/fr/about',
1002
- * // es: '/es/about'
1003
- * // }
1004
- * ```
1005
- */
1006
- const multilingualUrls = getMultilingualUrls("/");
1007
- const localizedUrl = multilingualUrls[locale];
1008
-
1009
- return {
1010
- ...metadata,
1011
- alternates: {
1012
- canonical: localizedUrl,
1013
- languages: { ...multilingualUrls, "x-default": "/" },
1014
- },
1015
- openGraph: {
1016
- url: localizedUrl,
1017
- },
1018
- };
1019
- };
1020
-
1021
- // ... Phần còn lại của code
1022
- ````
1023
-
1024
- ````javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
1025
- const { getIntlayer, getMultilingualUrls } = require("intlayer");
1026
-
1027
- const generateMetadata = async ({ params }) => {
1028
- const { locale } = await params;
1029
-
1030
- const metadata = getIntlayer("page-metadata", locale);
1031
-
1032
- /**
1033
- * Tạo một đối tượng chứa tất cả các url cho từng locale.
1034
- *
1035
- * Ví dụ:
1036
- * ```ts
1037
- * getMultilingualUrls('/about');
1038
- *
1039
- * // Trả về
1040
- * // {
1041
- * // en: '/about',
1042
- * // fr: '/fr/about',
1043
- * // es: '/es/about'
1044
- * // }
1045
- * ```
1046
- */
1047
- const multilingualUrls = getMultilingualUrls("/");
1048
- const localizedUrl = multilingualUrls[locale];
1049
-
1050
- return {
1051
- ...metadata,
1052
- alternates: {
1053
- canonical: localizedUrl,
1054
- languages: { ...multilingualUrls, "x-default": "/" },
1055
- },
1056
- openGraph: {
1057
- url: localizedUrl,
1058
- },
1059
- };
1060
- };
1061
-
1062
- module.exports = { generateMetadata };
1063
-
1064
- // ... Phần còn lại của mã```
1065
-
1066
- > Lưu ý rằng hàm `getIntlayer` được nhập từ `next-intlayer` trả về nội dung của bạn được bao bọc trong một `IntlayerNode`, cho phép tích hợp với trình chỉnh sửa trực quan. Ngược lại, hàm `getIntlayer` được nhập từ `intlayer` trả về nội dung của bạn trực tiếp mà không có các thuộc tính bổ sung.
1067
-
1068
- Ngoài ra, bạn có thể sử dụng hàm `getTranslation` để khai báo metadata của mình. Tuy nhiên, việc sử dụng các tệp khai báo nội dung được khuyến nghị để tự động hóa việc dịch metadata và tách nội dung ra bên ngoài vào một thời điểm nào đó.
1069
-
1070
- ```typescript fileName="src/app/[locale]/layout.tsx or src/app/[locale]/page.tsx" codeFormat="typescript"
1071
- import {
1072
- type IConfigLocales,
1073
- getTranslation,
1074
- getMultilingualUrls,
1075
- } from "intlayer";
1076
- import type { Metadata } from "next";
1077
- import type { LocalPromiseParams } from "next-intlayer";
1078
-
1079
- export const generateMetadata = async ({
1080
- params,
1081
- }: LocalPromiseParams): Promise<Metadata> => {
1082
- const { locale } = await params;
1083
- const t = <T>(content: IConfigLocales<T>) => getTranslation(content, locale);
1084
-
1085
- return {
1086
- title: t<string>({
1087
- en: "My title",
1088
- fr: "Mon titre",
1089
- es: "Mi título",
1090
- }),
1091
- description: t({
1092
- en: "My description",
1093
- fr: "Ma description",
1094
- es: "Mi descripción",
1095
- }),
1096
- };
1097
- };
1098
-
1099
- // ... Phần còn lại của mã
1100
- ```
1101
-
1102
- ```javascript fileName="src/app/[locale]/layout.mjs or src/app/[locale]/page.mjs" codeFormat="esm"
1103
- import { getTranslation, getMultilingualUrls } from "intlayer";
1104
-
1105
- export const generateMetadata = async ({ params }) => {
1106
- const { locale } = await params;
1107
- const t = (content) => getTranslation(content, locale);
1108
-
1109
- return {
1110
- title: t({
1111
- en: "My title",
1112
- fr: "Mon titre",
1113
- es: "Mi título",
1114
- }),
1115
- description: t({
1116
- en: "My description",
1117
- fr: "Ma description",
1118
- es: "Mi descripción",
1119
- }),
1120
- };
1121
- };
1122
-
1123
- // ... Phần còn lại của mã
1124
- ```
1125
-
1126
- ```javascript fileName="src/app/[locale]/layout.cjs or src/app/[locale]/page.cjs" codeFormat="commonjs"
1127
- const { getTranslation, getMultilingualUrls } = require("intlayer");
1128
-
1129
- const generateMetadata = async ({ params }) => {
1130
- const { locale } = await params;
1131
-
1132
- const t = (content) => getTranslation(content, locale);
1133
-
1134
- return {
1135
- title: t({
1136
- en: "My title",
1137
- fr: "Mon titre",
1138
- es: "Mi título",
1139
- }),
1140
- description: t({
1141
- en: "My description",
1142
- fr: "Ma description",
1143
- es: "Mi descripción",
1144
- }),
1145
- };
1146
- };
1147
-
1148
- module.exports = { generateMetadata };
1149
-
1150
- // ... Phần còn lại của mã
1151
- ```
1152
-
1153
- > Tìm hiểu thêm về tối ưu hóa metadata [trong tài liệu chính thức của Next.js](https://nextjs.org/docs/app/building-your-application/optimizing/metadata).
1154
-
1155
- ### (Tùy chọn) Bước 9: Quốc tế hóa sitemap.xml và robots.txt của bạn
1156
-
1157
- Để quốc tế hóa `sitemap.xml` và `robots.txt`, bạn có thể sử dụng hàm `getMultilingualUrls` do Intlayer cung cấp. Hàm này cho phép bạn tạo các URL đa ngôn ngữ cho sitemap của mình.
1158
-
1159
- ```tsx fileName="src/app/sitemap.ts" codeFormat="typescript"
1160
- import { getMultilingualUrls } from "intlayer";
1161
- import type { MetadataRoute } from "next";
1162
-
1163
- const sitemap = (): MetadataRoute.Sitemap => [
1164
- {
1165
- url: "https://example.com",
1166
- alternates: {
1167
- languages: {
1168
- ...getMultilingualUrls("https://example.com"),
1169
- "x-default": "https://example.com",
1170
- },
1171
- },
1172
- },
1173
- {
1174
- url: "https://example.com/login",
1175
- alternates: {
1176
- languages: {
1177
- ...getMultilingualUrls("https://example.com/login"),
1178
- "x-default": "https://example.com/login",
1179
- },
1180
- },
1181
- },
1182
- {
1183
- url: "https://example.com/register",
1184
- alternates: {
1185
- languages: {
1186
- ...getMultilingualUrls("https://example.com/register"),
1187
- "x-default": "https://example.com/register",
1188
- },
1189
- },
1190
- },
1191
- ];
1192
-
1193
- export default sitemap;
1194
- ```
1195
-
1196
- ```jsx fileName="src/app/sitemap.mjx" codeFormat="esm"
1197
- import { getMultilingualUrls } from "intlayer";
1198
-
1199
- const sitemap = () => [
1200
- {
1201
- url: "https://example.com",
1202
- alternates: {
1203
- languages: {
1204
- ...getMultilingualUrls("https://example.com"),
1205
- "x-default": "https://example.com",
1206
- },
1207
- },
1208
- },
1209
- {
1210
- url: "https://example.com/login",
1211
- alternates: {
1212
- languages: {
1213
- ...getMultilingualUrls("https://example.com/login"),
1214
- "x-default": "https://example.com/login",
1215
- },
1216
- },
1217
- },
1218
- {
1219
- url: "https://example.com/register",
1220
- alternates: {
1221
- languages: {
1222
- ...getMultilingualUrls("https://example.com/register"),
1223
- "x-default": "https://example.com/register",
1224
- },
1225
- },
1226
- },
1227
- ];
1228
-
1229
- export default sitemap;
1230
- ```
1231
-
1232
- ```jsx fileName="src/app/sitemap.csx" codeFormat="commonjs"
1233
- const { getMultilingualUrls } = require("intlayer");
1234
-
1235
- const sitemap = () => [
1236
- {
1237
- url: "https://example.com",
1238
- alternates: {
1239
- languages: {
1240
- ...getMultilingualUrls("https://example.com"),
1241
- "x-default": "https://example.com",
1242
- },
1243
- },
1244
- },
1245
- {
1246
- url: "https://example.com/login",
1247
- alternates: {
1248
- languages: {
1249
- ...getMultilingualUrls("https://example.com/login"),
1250
- "x-default": "https://example.com/login",
1251
- },
1252
- },
1253
- },
1254
- {
1255
- url: "https://example.com/register",
1256
- alternates: {
1257
- languages: {
1258
- ...getMultilingualUrls("https://example.com/register"),
1259
- "x-default": "https://example.com/register",
1260
- },
1261
- },
1262
- },
1263
- ];
1264
-
1265
- module.exports = sitemap;
1266
- ```
1267
-
1268
- ```tsx fileName="src/app/robots.ts" codeFormat="typescript"
1269
- import type { MetadataRoute } from "next";
1270
- import { getMultilingualUrls } from "intlayer";
1271
-
1272
- const getAllMultilingualUrls = (urls: string[]) =>
1273
- urls.flatMap((url) => Object.values(getMultilingualUrls(url)) as string[]);
1274
-
1275
- const robots = (): MetadataRoute.Robots => ({
1276
- rules: {
1277
- userAgent: "*",
1278
- allow: ["/"],
1279
- disallow: getAllMultilingualUrls(["/login", "/register"]),
1280
- },
1281
- host: "https://example.com",
1282
- sitemap: `https://example.com/sitemap.xml`,
1283
- });
1284
-
1285
- export default robots;
1286
- ```
1287
-
1288
- ```jsx fileName="src/app/robots.mjx" codeFormat="esm"
1289
- import { getMultilingualUrls } from "intlayer";
1290
-
1291
- const getAllMultilingualUrls = (urls) =>
1292
- urls.flatMap((url) => Object.values(getMultilingualUrls(url)));
1293
-
1294
- const robots = () => ({
1295
- rules: {
1296
- userAgent: "*",
1297
- allow: ["/"],
1298
- disallow: getAllMultilingualUrls(["/login", "/register"]),
1299
- },
1300
- host: "https://example.com",
1301
- sitemap: `https://example.com/sitemap.xml`,
1302
- });
1303
-
1304
- export default robots;
1305
- ```
1306
-
1307
- ```jsx fileName="src/app/robots.csx" codeFormat="commonjs"
1308
- const { getMultilingualUrls } = require("intlayer");
1309
-
1310
- // Lấy tất cả các URL đa ngôn ngữ từ danh sách URL đầu vào
1311
- const getAllMultilingualUrls = (urls) =>
1312
- urls.flatMap((url) => Object.values(getMultilingualUrls(url)));
1313
-
1314
- const robots = () => ({
1315
- rules: {
1316
- userAgent: "*",
1317
- allow: ["/"],
1318
- disallow: getAllMultilingualUrls(["/login", "/register"]), // Chặn các trang đăng nhập và đăng ký đa ngôn ngữ
1319
- },
1320
- host: "https://example.com",
1321
- sitemap: `https://example.com/sitemap.xml`,
1322
- });
1323
-
1324
- module.exports = robots;
1325
- ```
1326
-
1327
- > Tìm hiểu thêm về tối ưu hóa sitemap [trong tài liệu chính thức của Next.js](https://nextjs.org/docs/app/api-reference/file-conventions/metadata/sitemap). Tìm hiểu thêm về tối ưu hóa robots.txt [trong tài liệu chính thức của Next.js](https://nextjs.org/docs/app/api-reference/file-conventions/metadata/robots).
1328
-
1329
- ### (Tùy chọn) Bước 10: Thay đổi ngôn ngữ nội dung của bạn
1330
-
1331
- Để thay đổi ngôn ngữ nội dung trong Next.js, cách được khuyến nghị là sử dụng thành phần `Link` để chuyển hướng người dùng đến trang đã được địa phương hóa phù hợp. Thành phần `Link` cho phép tải trước trang, giúp tránh việc tải lại toàn bộ trang.
1332
-
1333
- ```tsx fileName="src/components/LocaleSwitcher.tsx" codeFormat="typescript"
1334
- "use client";
1335
-
1336
- import type { FC } from "react";
1337
- import {
1338
- Locales,
1339
- getHTMLTextDir,
1340
- getLocaleName,
1341
- getLocalizedUrl,
1342
- } from "intlayer";
1343
- import { useLocale } from "next-intlayer";
1344
- import Link from "next/link";
1345
-
1346
- export const LocaleSwitcher: FC = () => {
1347
- const { locale, pathWithoutLocale, availableLocales, setLocale } =
1348
- useLocale();
1349
-
1350
- return (
1351
- <div>
1352
- <button popoverTarget="localePopover">{getLocaleName(locale)}</button>
1353
- <div id="localePopover" popover="auto">
1354
- {availableLocales.map((localeItem) => (
1355
- <Link
1356
- href={getLocalizedUrl(pathWithoutLocale, localeItem)}
1357
- key={localeItem}
1358
- aria-current={locale === localeItem ? "page" : undefined}
1359
- onClick={() => setLocale(localeItem)}
1360
- replace // Sẽ đảm bảo nút "quay lại" trên trình duyệt sẽ chuyển hướng về trang trước đó
1361
- >
1362
- <span>
1363
- {/* Ngôn ngữ - ví dụ: FR */}
1364
- {localeItem}
1365
- </span>
1366
- <span>
1367
- {/* Ngôn ngữ trong chính Locale của nó - ví dụ: Français */}
1368
- {getLocaleName(localeItem, locale)}
1369
- </span>
1370
- <span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
1371
- {/* Ngôn ngữ trong Locale hiện tại - ví dụ: Francés với locale hiện tại đặt là Locales.SPANISH */}
1372
- {getLocaleName(localeItem)}
1373
- </span>
1374
- <span dir="ltr" lang={Locales.ENGLISH}>
1375
- {/* Ngôn ngữ bằng tiếng Anh - ví dụ: French */}
1376
- {getLocaleName(localeItem, Locales.ENGLISH)}
1377
- </span>
1378
- </Link>
1379
- ))}
1380
- </div>
1381
- </div>
1382
- );
1383
- };
1384
- ```
1385
-
1386
- ```jsx fileName="src/components/LocaleSwitcher.msx" codeFormat="esm"
1387
- "use client";
1388
-
1389
- import {
1390
- Locales,
1391
- getHTMLTextDir,
1392
- getLocaleName,
1393
- getLocalizedUrl,
1394
- } from "intlayer";
1395
- import { useLocale } from "next-intlayer";
1396
- import Link from "next/link";
1397
-
1398
- export const LocaleSwitcher = () => {
1399
- const { locale, pathWithoutLocale, availableLocales, setLocale } =
1400
- useLocale();
1401
-
1402
- return (
1403
- <div>
1404
- <button popoverTarget="localePopover">{getLocaleName(locale)}</button>
1405
- <div id="localePopover" popover="auto">
1406
- {availableLocales.map((localeItem) => (
1407
- <Link
1408
- href={getLocalizedUrl(pathWithoutLocale, localeItem)}
1409
- key={localeItem}
1410
- aria-current={locale === localeItem ? "page" : undefined}
1411
- onClick={() => setLocale(localeItem)}
1412
- replace // Sẽ đảm bảo rằng nút "quay lại" trên trình duyệt sẽ chuyển hướng về trang trước đó
1413
- >
1414
- <span>
1415
- {/* Mã ngôn ngữ - ví dụ: FR */}
1416
- {localeItem}
1417
- </span>
1418
- <span>
1419
- {/* Ngôn ngữ trong chính Locale của nó - ví dụ: Français */}
1420
- {getLocaleName(localeItem, locale)}
1421
- </span>
1422
- <span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
1423
- {/* Ngôn ngữ trong Locale hiện tại - ví dụ: Francés khi locale hiện tại được đặt là Locales.SPANISH */}
1424
- {getLocaleName(localeItem)}
1425
- </span>
1426
- <span dir="ltr" lang={Locales.ENGLISH}>
1427
- {/* Ngôn ngữ bằng tiếng Anh - ví dụ: French */}
1428
- {getLocaleName(localeItem, Locales.ENGLISH)}
1429
- </span>
1430
- </Link>
1431
- ))}
1432
- </div>
1433
- </div>
1434
- );
1435
- };
1436
- ```
1437
-
1438
- ```jsx fileName="src/components/LocaleSwitcher.csx" codeFormat="commonjs"
1439
- "use client";
1440
-
1441
- const {
1442
- Locales,
1443
- getHTMLTextDir,
1444
- getLocaleName,
1445
- getLocalizedUrl,
1446
- } = require("intlayer");
1447
- const { useLocale } = require("next-intlayer");
1448
- const Link = require("next/link");
1449
-
1450
- export const LocaleSwitcher = () => {
1451
- const { locale, pathWithoutLocale, availableLocales, setLocale } =
1452
- useLocale();
1453
-
1454
- return (
1455
- <div>
1456
- <button popoverTarget="localePopover">{getLocaleName(locale)}</button>
1457
- <div id="localePopover" popover="auto">
1458
- {availableLocales.map((localeItem) => (
1459
- <Link
1460
- href={getLocalizedUrl(pathWithoutLocale, localeItem)}
1461
- key={localeItem}
1462
- aria-current={locale === localeItem ? "page" : undefined}
1463
- onClick={() => setLocale(localeItem)}
1464
- replace // Sẽ đảm bảo nút "quay lại" trên trình duyệt sẽ chuyển hướng về trang trước đó
1465
- >
1466
- <span>
1467
- {/* Locale - ví dụ: FR */}
1468
- {localeItem}
1469
- </span>
1470
- <span>
1471
- {/* Ngôn ngữ trong Locale của chính nó - ví dụ: Français */}
1472
- {getLocaleName(localeItem, locale)}
1473
- </span>
1474
- <span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
1475
- {/* Ngôn ngữ trong Locale hiện tại - ví dụ: Francés với locale hiện tại được đặt là Locales.SPANISH */}
1476
- {getLocaleName(localeItem)}
1477
- </span>
1478
- <span dir="ltr" lang={Locales.ENGLISH}>
1479
- {/* Ngôn ngữ bằng tiếng Anh - ví dụ: French */}
1480
- {getLocaleName(localeItem, Locales.ENGLISH)}
1481
- </span>
1482
- </Link>
1483
- ))}
1484
- </div>
1485
- </div>
1486
- );
1487
- };
1488
- ```
1489
-
1490
- > Một cách thay thế là sử dụng hàm `setLocale` được cung cấp bởi hook `useLocale`. Hàm này sẽ không cho phép prefetch trang. Xem thêm chi tiết trong [tài liệu hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/next-intlayer/useLocale.md).
1491
-
1492
- > Bạn cũng có thể đặt một hàm trong tùy chọn `onLocaleChange` để kích hoạt một hàm tùy chỉnh khi locale thay đổi.
1493
-
1494
- ```tsx fileName="src/components/LocaleSwitcher.tsx"
1495
- "use client";
1496
-
1497
- import { useRouter } from "next/navigation";
1498
- import { useLocale } from "next-intlayer";
1499
- import { getLocalizedUrl } from "intlayer";
1500
-
1501
- // ... Phần còn lại của mã
1502
-
1503
- const router = useRouter();
1504
- const { setLocale } = useLocale({
1505
- onLocaleChange: (locale) => {
1506
- router.push(getLocalizedUrl(pathWithoutLocale, locale));
1507
- },
1508
- });
1509
-
1510
- return (
1511
- <button onClick={() => setLocale(Locales.FRENCH)}>Chuyển sang tiếng Pháp</button>
1512
- );
1513
- ```
1514
-
1515
- > Tham khảo tài liệu:
1516
- >
1517
- > - [`useLocale` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/next-intlayer/useLocale.md)
1518
- > - [`getLocaleName` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/intlayer/getLocaleName.md)
1519
- > - [`getLocalizedUrl` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/intlayer/getLocalizedUrl.md)
1520
- > - [`getHTMLTextDir` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/intlayer/getHTMLTextDir.md)
1521
- > - [`hrefLang` attribute](https://developers.google.com/search/docs/specialty/international/localized-versions?hl=fr)
1522
- > - [`lang` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang)
1523
- > - [`dir` attribute`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir)
1524
- > - [`aria-current` attribute`](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)
1525
-
1526
- ### (Tùy chọn) Bước 11: Tạo một Thành phần Link Đa ngôn ngữ
1527
-
1528
- Để đảm bảo rằng điều hướng của ứng dụng của bạn tôn trọng ngôn ngữ hiện tại, bạn có thể tạo một component `Link` tùy chỉnh. Component này tự động thêm tiền tố ngôn ngữ hiện tại vào các URL nội bộ, ví dụ, khi một người dùng nói tiếng Pháp nhấp vào liên kết đến trang "About", họ sẽ được chuyển hướng đến `/fr/about` thay vì `/about`.
1529
-
1530
- Hành vi này hữu ích vì một số lý do sau:
1531
-
1532
- - **SEO và Trải nghiệm người dùng**: URL có địa phương hóa giúp các công cụ tìm kiếm lập chỉ mục chính xác các trang theo ngôn ngữ và cung cấp nội dung cho người dùng theo ngôn ngữ ưa thích của họ.
1533
- - **Tính nhất quán**: Bằng cách sử dụng liên kết có địa phương hóa trong toàn bộ ứng dụng, bạn đảm bảo rằng điều hướng luôn nằm trong ngôn ngữ hiện tại, tránh việc chuyển đổi ngôn ngữ không mong muốn.
1534
- - **Dễ bảo trì**: Tập trung logic địa phương hóa trong một component duy nhất giúp đơn giản hóa việc quản lý URL, làm cho codebase của bạn dễ bảo trì và mở rộng khi ứng dụng phát triển.
1535
-
1536
- Dưới đây là triển khai của component `Link` được địa phương hóa bằng TypeScript:
1537
-
1538
- ```tsx fileName="src/components/Link.tsx" codeFormat="typescript"
1539
- "use client";
1540
-
1541
- import { getLocalizedUrl } from "intlayer";
1542
- import NextLink, { type LinkProps as NextLinkProps } from "next/link";
1543
- import { useLocale } from "next-intlayer";
1544
- import type { PropsWithChildren, FC } from "react";
1545
-
1546
- /**
1547
- * Hàm tiện ích để kiểm tra xem một URL có phải là liên kết bên ngoài hay không.
1548
- * Nếu URL bắt đầu bằng http:// hoặc https:// thì được xem là liên kết bên ngoài.
1549
- */
1550
- export const checkIsExternalLink = (href?: string): boolean =>
1551
- /^https?:\/\//.test(href ?? "");
1552
-
1553
- /**
1554
- * Một component Link tùy chỉnh điều chỉnh thuộc tính href dựa trên locale hiện tại.
1555
- * Đối với các liên kết nội bộ, nó sử dụng `getLocalizedUrl` để thêm tiền tố locale vào URL (ví dụ: /fr/about).
1556
- * Điều này đảm bảo việc điều hướng luôn nằm trong cùng ngữ cảnh locale.
1557
- */
1558
- export const Link: FC<PropsWithChildren<NextLinkProps>> = ({
1559
- href,
1560
- children,
1561
- ...props
1562
- }) => {
1563
- const { locale } = useLocale();
1564
- const isExternalLink = checkIsExternalLink(href.toString());
1565
-
1566
- // Nếu liên kết là nội bộ và href hợp lệ được cung cấp, lấy URL đã được địa phương hóa.
1567
- const hrefI18n: NextLinkProps["href"] =
1568
- href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
1569
-
1570
- return (
1571
- <NextLink href={hrefI18n} {...props}>
1572
- {children}
1573
- </NextLink>
1574
- );
1575
- };
1576
- ```
1577
-
1578
- ```jsx fileName="src/components/Link.mjx" codeFormat="esm"
1579
- "use client";
1580
-
1581
- import { getLocalizedUrl } from "intlayer";
1582
- import NextLink from "next/link";
1583
- import { useLocale } from "next-intlayer";
1584
-
1585
- /**
1586
- * Hàm tiện ích để kiểm tra xem một URL có phải là liên kết bên ngoài hay không.
1587
- * Nếu URL bắt đầu bằng http:// hoặc https://, nó được coi là liên kết bên ngoài.
1588
- */
1589
- export const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
1590
-
1591
- /**
1592
- * Một component Link tùy chỉnh điều chỉnh thuộc tính href dựa trên locale hiện tại.
1593
- * Đối với các liên kết nội bộ, nó sử dụng `getLocalizedUrl` để thêm tiền tố locale vào URL (ví dụ: /fr/about).
1594
- * Điều này đảm bảo việc điều hướng luôn nằm trong cùng ngữ cảnh locale.
1595
- */
1596
- export const Link = ({ href, children, ...props }) => {
1597
- const { locale } = useLocale();
1598
- const isExternalLink = checkIsExternalLink(href.toString());
1599
-
1600
- // Nếu liên kết là nội bộ và href hợp lệ được cung cấp, lấy URL đã được địa phương hóa.
1601
- const hrefI18n =
1602
- href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
1603
-
1604
- return (
1605
- <NextLink href={hrefI18n} {...props}>
1606
- {children}
1607
- </NextLink>
1608
- );
1609
- };
1610
- ```
1611
-
1612
- ```jsx fileName="src/components/Link.csx" codeFormat="commonjs"
1613
- "use client";
1614
-
1615
- const { getLocalizedUrl } = require("intlayer");
1616
- const NextLink = require("next/link");
1617
- const { useLocale } = require("next-intlayer");
1618
-
1619
- /**
1620
- * Hàm tiện ích để kiểm tra xem một URL có phải là liên kết ngoài hay không.
1621
- * Nếu URL bắt đầu bằng http:// hoặc https://, nó được coi là liên kết ngoài.
1622
- */
1623
- const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
1624
-
1625
- /**
1626
- * Một component Link tùy chỉnh điều chỉnh thuộc tính href dựa trên locale hiện tại.
1627
- * Đối với các liên kết nội bộ, nó sử dụng `getLocalizedUrl` để thêm tiền tố locale vào URL (ví dụ: /fr/about).
1628
- * Điều này đảm bảo rằng việc điều hướng luôn giữ trong cùng ngữ cảnh locale.
1629
- */
1630
- const Link = ({ href, children, ...props }) => {
1631
- const { locale } = useLocale();
1632
- const isExternalLink = checkIsExternalLink(href.toString());
1633
-
1634
- // Nếu liên kết là nội bộ và href hợp lệ được cung cấp, lấy URL đã được địa phương hóa.
1635
- const hrefI18n =
1636
- href && !isExternalLink ? getLocalizedUrl(href.toString(), locale) : href;
1637
-
1638
- return (
1639
- <NextLink href={hrefI18n} {...props}>
1640
- {children}
1641
- </NextLink>
1642
- );
1643
- };
1644
- ```
1645
-
1646
- #### Cách Hoạt Động
1647
-
1648
- - **Phát hiện Liên kết Ngoài**:
1649
- Hàm trợ giúp `checkIsExternalLink` xác định xem một URL có phải là liên kết bên ngoài hay không. Các liên kết bên ngoài được giữ nguyên vì chúng không cần được địa phương hóa.
1650
-
1651
- - **Lấy Ngôn Ngữ Hiện Tại**:
1652
- Hook `useLocale` cung cấp ngôn ngữ hiện tại (ví dụ: `fr` cho tiếng Pháp).
1653
-
1654
- - **Địa Phương Hóa URL**:
1655
- Đối với các liên kết nội bộ (tức là không phải liên kết bên ngoài), `getLocalizedUrl` được sử dụng để tự động thêm tiền tố ngôn ngữ vào URL. Điều này có nghĩa là nếu người dùng của bạn đang ở ngôn ngữ tiếng Pháp, việc truyền `/about` làm `href` sẽ chuyển thành `/fr/about`.
1656
-
1657
- - **Trả Về Liên Kết**:
1658
- Component trả về một phần tử `<a>` với URL đã được địa phương hóa, đảm bảo rằng việc điều hướng phù hợp với ngôn ngữ hiện tại.
1659
-
1660
- Bằng cách tích hợp component `Link` này trong toàn bộ ứng dụng của bạn, bạn duy trì trải nghiệm người dùng nhất quán và nhận biết ngôn ngữ đồng thời tận dụng được lợi ích về SEO và khả năng sử dụng được cải thiện.
1661
-
1662
- ### (Tùy chọn) Bước 12: Lấy locale hiện tại trong Server Actions
1663
-
1664
- Nếu bạn cần locale đang hoạt động bên trong một Server Action (ví dụ: để địa phương hóa email hoặc chạy logic nhận biết locale), hãy gọi `getLocale` từ `next-intlayer/server`:
1665
-
1666
- ```tsx fileName="src/app/actions/getLocale.ts" codeFormat="typescript"
1667
- "use server";
1668
-
1669
- import { getLocale } from "next-intlayer/server";
1670
-
1671
- export const myServerAction = async () => {
1672
- const locale = await getLocale();
1673
-
1674
- // Thực hiện một số thao tác với locale
1675
- };
1676
- ```
1677
-
1678
- > Hàm `getLocale` tuân theo chiến lược phân tầng để xác định locale của người dùng:
1679
- >
1680
- > 1. Đầu tiên, nó kiểm tra các header của yêu cầu để tìm giá trị locale có thể đã được thiết lập bởi middleware
1681
- > 2. Nếu không tìm thấy locale trong header, nó sẽ tìm locale được lưu trong cookie
1682
- > 3. Nếu không tìm thấy cookie, nó sẽ cố gắng phát hiện ngôn ngữ ưu tiên của người dùng từ cài đặt trình duyệt của họ
1683
- > 4. Cuối cùng, nó sẽ sử dụng locale mặc định được cấu hình trong ứng dụng
1684
- >
1685
- > Điều này đảm bảo locale phù hợp nhất được chọn dựa trên ngữ cảnh có sẵn.
1686
-
1687
- ### (Tùy chọn) Bước 13: Tối ưu kích thước bundle của bạn
1688
-
1689
- Khi sử dụng `next-intlayer`, các từ điển được bao gồm trong bundle cho mỗi trang theo mặc định. Để tối ưu kích thước bundle, Intlayer cung cấp một plugin SWC tùy chọn thay thế thông minh các lệnh gọi `useIntlayer` bằng cách sử dụng macro. Điều này đảm bảo các từ điển chỉ được bao gồm trong bundle của những trang thực sự sử dụng chúng.
1690
-
1691
- Để kích hoạt tối ưu này, hãy cài đặt gói `@intlayer/swc`. Khi đã cài đặt, `next-intlayer` sẽ tự động phát hiện và sử dụng plugin:
1692
-
1693
- ```bash packageManager="npm"
1694
- npm install @intlayer/swc --save-dev
1695
- ```
1696
-
1697
- ```bash packageManager="pnpm"
1698
- pnpm add @intlayer/swc --save-dev
1699
- ```
1700
-
1701
- ```bash packageManager="yarn"
1702
- yarn add @intlayer/swc --save-dev
1703
- ```
1704
-
1705
- ```bash packageManager="bun"
1706
- bun add @intlayer/swc --dev
1707
- ```
1708
-
1709
- > Lưu ý: Tối ưu này chỉ khả dụng cho Next.js 13 trở lên.
1710
-
1711
- > Lưu ý: Gói này không được cài đặt mặc định vì các plugin SWC vẫn đang trong giai đoạn thử nghiệm trên Next.js. Điều này có thể thay đổi trong tương lai.
1712
-
1713
- > Lưu ý: Nếu bạn đặt tùy chọn là `importMode: 'dynamic'` hoặc `importMode: 'fetch'` (in the `dictionary` configuration), nó sẽ dựa vào Suspense, vì vậy bạn sẽ phải bao bọc các lần gọi `useIntlayer` của mình trong một vùng `Suspense`. Điều đó có nghĩa là bạn sẽ không thể sử dụng `useIntlayer` trực tiếp ở cấp cao nhất của thành phần Page / Layout.
1714
-
1715
- ### Giám sát thay đổi từ điển trên Turbopack
1716
-
1717
- Khi sử dụng Turbopack làm máy chủ phát triển với lệnh `next dev --turbopack`, các thay đổi từ điển sẽ không được phát hiện tự động theo mặc định.
1718
-
1719
- Hạn chế này xảy ra vì Turbopack không thể chạy các plugin webpack song song để theo dõi các thay đổi trong các tệp nội dung của bạn. Để khắc phục điều này, bạn sẽ cần sử dụng lệnh `intlayer watch` để chạy đồng thời cả máy chủ phát triển và trình theo dõi build của Intlayer.
1720
-
1721
- ```json5 fileName="package.json"
1722
- {
1723
- // ... Cấu hình package.json hiện có của bạn
1724
- "scripts": {
1725
- // ... Cấu hình scripts hiện có của bạn
1726
- "dev": "intlayer watch --with 'next dev --turbopack'",
1727
- },
1728
- }
1729
- ```
1730
-
1731
- ### Cấu hình TypeScript
1732
-
1733
- Intlayer sử dụng module augmentation để tận dụng các lợi ích của TypeScript và làm cho codebase của bạn mạnh mẽ hơn.
1734
-
1735
- ![Tự động hoàn thành](https://github.com/aymericzip/intlayer/blob/main/docs/assets/autocompletion.png?raw=true)
1736
-
1737
- ![Lỗi dịch thuật](https://github.com/aymericzip/intlayer/blob/main/docs/assets/translation_error.png?raw=true)
1738
-
1739
- Đảm bảo cấu hình TypeScript của bạn bao gồm các kiểu được tự động tạo.
1740
-
1741
- ```json5 fileName="tsconfig.json"
1742
- {
1743
- // ... Các cấu hình TypeScript hiện có của bạn
1744
- "include": [
1745
- // ... Các cấu hình TypeScript hiện có của bạn
1746
- ".intlayer/**/*.ts", // Bao gồm các kiểu được tự động tạo
1747
- ],
1748
- }
1749
- ```
1750
-
1751
- ### Cấu hình Git
1752
-
1753
- Khuyến nghị bỏ qua các tệp được tạo bởi Intlayer. Điều này giúp bạn tránh việc commit chúng vào kho Git của mình.
1754
-
1755
- Để làm điều này, bạn có thể thêm các hướng dẫn sau vào tệp `.gitignore` của bạn:
1756
-
1757
- ```plaintext fileName=".gitignore"
1758
- # Bỏ qua các tệp được tạo bởi Intlayer
1759
- .intlayer
1760
- ```
1761
-
1762
- ### Tiện ích mở rộng VS Code
1763
-
1764
- Để cải thiện trải nghiệm phát triển với Intlayer, bạn có thể cài đặt **Tiện ích mở rộng Intlayer cho VS Code** chính thức.
1765
-
1766
- [Cài đặt từ VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
1767
-
1768
- Tiện ích mở rộng này cung cấp:
1769
-
1770
- - **Tự động hoàn thành** cho các khóa dịch.
1771
- - **Phát hiện lỗi theo thời gian thực** cho các bản dịch bị thiếu.
1772
- - **Xem trước nội dung dịch ngay trong dòng**.
1773
- - **Hành động nhanh** để dễ dàng tạo và cập nhật các bản dịch.
1774
-
1775
- Để biết thêm chi tiết về cách sử dụng tiện ích mở rộng, hãy tham khảo [Tài liệu Tiện ích mở rộng Intlayer cho VS Code](https://intlayer.org/doc/vs-code-extension).
1776
-
1777
- ### Đi xa hơn
1778
-
1779
- Để đi xa hơn, bạn có thể triển khai [trình soạn thảo trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_visual_editor.md) hoặc tách nội dung của bạn ra bên ngoài bằng cách sử dụng [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md).
1780
- ````