@intlayer/docs 9.0.0-canary.4 → 9.0.0-canary.5

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 (1487) hide show
  1. package/blog/ar/intlayer_with_i18next.md +4 -0
  2. package/blog/ar/intlayer_with_next-i18next.md +0 -11
  3. package/blog/ar/intlayer_with_next-intl.md +4 -0
  4. package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +35 -28
  5. package/blog/ar/rag_powered_documentation_assistant.md +13 -0
  6. package/blog/ar/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
  7. package/blog/ar/vue-i18n_vs_intlayer.md +8 -0
  8. package/blog/de/intlayer_with_i18next.md +4 -0
  9. package/blog/de/intlayer_with_next-i18next.md +0 -11
  10. package/blog/de/intlayer_with_next-intl.md +4 -0
  11. package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
  12. package/blog/de/rag_powered_documentation_assistant.md +0 -193
  13. package/blog/de/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
  14. package/blog/de/vue-i18n_vs_intlayer.md +8 -0
  15. package/blog/en-GB/intlayer_with_i18next.md +4 -0
  16. package/blog/en-GB/intlayer_with_next-i18next.md +0 -11
  17. package/blog/en-GB/intlayer_with_next-intl.md +4 -0
  18. package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
  19. package/blog/en-GB/react-i18next_vs_react-intl_vs_intlayer.md +14 -0
  20. package/blog/en-GB/vue-i18n_vs_intlayer.md +16 -0
  21. package/blog/es/intlayer_with_i18next.md +4 -0
  22. package/blog/es/intlayer_with_next-i18next.md +0 -11
  23. package/blog/es/intlayer_with_next-intl.md +4 -0
  24. package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
  25. package/blog/es/rag_powered_documentation_assistant.md +13 -0
  26. package/blog/es/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
  27. package/blog/es/vue-i18n_vs_intlayer.md +8 -0
  28. package/blog/fr/i18n_meaning.md +95 -0
  29. package/blog/fr/intlayer_with_next-i18next.md +0 -11
  30. package/blog/fr/intlayer_with_next-intl.md +4 -0
  31. package/blog/fr/intlayer_with_react-i18next.md +0 -8
  32. package/blog/fr/list_i18n_technologies/frameworks/angular.md +0 -2
  33. package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
  34. package/blog/fr/rag_powered_documentation_assistant.md +0 -62
  35. package/blog/fr/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
  36. package/blog/fr/vue-i18n_vs_intlayer.md +8 -0
  37. package/blog/hi/intlayer_with_i18next.md +4 -0
  38. package/blog/hi/intlayer_with_next-i18next.md +0 -11
  39. package/blog/hi/intlayer_with_next-intl.md +4 -0
  40. package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +1256 -0
  41. package/blog/hi/rag_powered_documentation_assistant.md +13 -0
  42. package/blog/hi/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
  43. package/blog/hi/vue-i18n_vs_intlayer.md +8 -0
  44. package/blog/id/internationalization_and_SEO.md +0 -91
  45. package/blog/id/intlayer_with_i18next.md +4 -0
  46. package/blog/id/intlayer_with_next-i18next.md +0 -11
  47. package/blog/id/intlayer_with_next-intl.md +4 -0
  48. package/blog/id/rag_powered_documentation_assistant.md +13 -0
  49. package/blog/it/intlayer_with_i18next.md +4 -0
  50. package/blog/it/intlayer_with_next-i18next.md +0 -11
  51. package/blog/it/intlayer_with_next-intl.md +4 -0
  52. package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
  53. package/blog/it/rag_powered_documentation_assistant.md +0 -195
  54. package/blog/it/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
  55. package/blog/it/vue-i18n_vs_intlayer.md +8 -0
  56. package/blog/ja/intlayer_with_i18next.md +4 -0
  57. package/blog/ja/intlayer_with_next-i18next.md +0 -11
  58. package/blog/ja/intlayer_with_next-intl.md +4 -0
  59. package/blog/ja/l10n_platform_alternative/Lokalise.md +10 -0
  60. package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +121 -26
  61. package/blog/ja/rag_powered_documentation_assistant.md +13 -0
  62. package/blog/ja/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
  63. package/blog/ja/vue-i18n_vs_intlayer.md +8 -0
  64. package/blog/ko/intlayer_with_i18next.md +4 -0
  65. package/blog/ko/intlayer_with_next-i18next.md +0 -11
  66. package/blog/ko/intlayer_with_next-intl.md +4 -0
  67. package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +121 -18
  68. package/blog/ko/rag_powered_documentation_assistant.md +0 -194
  69. package/blog/ko/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
  70. package/blog/ko/vue-i18n_vs_intlayer.md +8 -0
  71. package/blog/ko/what_is_internationalization.md +0 -4
  72. package/blog/pl/___per-component_vs_centralized_i18n.md +100 -0
  73. package/blog/pl/internationalization_and_SEO.md +0 -91
  74. package/blog/pl/intlayer_with_i18next.md +4 -0
  75. package/blog/pl/intlayer_with_next-i18next.md +0 -11
  76. package/blog/pl/intlayer_with_next-intl.md +4 -0
  77. package/blog/pl/l10n_platform_alternative/Lokalise.md +6 -0
  78. package/blog/pl/rag_powered_documentation_assistant.md +13 -0
  79. package/blog/pt/internationalization_and_SEO.md +1 -1
  80. package/blog/pt/intlayer_with_i18next.md +4 -0
  81. package/blog/pt/intlayer_with_next-i18next.md +0 -11
  82. package/blog/pt/intlayer_with_next-intl.md +4 -0
  83. package/blog/pt/intlayer_with_react-intl.md +0 -4
  84. package/blog/pt/l10n_platform_alternative/crowdin.md +0 -6
  85. package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
  86. package/blog/pt/rag_powered_documentation_assistant.md +0 -195
  87. package/blog/pt/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
  88. package/blog/pt/vue-i18n_vs_intlayer.md +8 -0
  89. package/blog/ru/intlayer_with_i18next.md +4 -0
  90. package/blog/ru/intlayer_with_next-i18next.md +0 -11
  91. package/blog/ru/intlayer_with_next-intl.md +4 -0
  92. package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
  93. package/blog/ru/rag_powered_documentation_assistant.md +13 -0
  94. package/blog/ru/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
  95. package/blog/ru/vue-i18n_vs_intlayer.md +8 -0
  96. package/blog/tr/intlayer_with_i18next.md +4 -0
  97. package/blog/tr/intlayer_with_next-i18next.md +0 -11
  98. package/blog/tr/intlayer_with_next-intl.md +4 -0
  99. package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +1189 -0
  100. package/blog/tr/rag_powered_documentation_assistant.md +0 -38
  101. package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +9 -0
  102. package/blog/uk/rag_powered_documentation_assistant.md +13 -0
  103. package/blog/vi/internationalization_and_SEO.md +0 -91
  104. package/blog/vi/intlayer_with_i18next.md +4 -0
  105. package/blog/vi/intlayer_with_next-i18next.md +0 -11
  106. package/blog/vi/intlayer_with_next-intl.md +4 -0
  107. package/blog/vi/rag_powered_documentation_assistant.md +13 -0
  108. package/blog/zh/intlayer_with_i18next.md +4 -47
  109. package/blog/zh/intlayer_with_next-i18next.md +0 -58
  110. package/blog/zh/intlayer_with_next-intl.md +4 -47
  111. package/blog/zh/intlayer_with_react-i18next.md +0 -47
  112. package/blog/zh/intlayer_with_react-intl.md +0 -47
  113. package/blog/zh/intlayer_with_vue-i18n.md +0 -47
  114. package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +121 -26
  115. package/blog/zh/nextjs-multilingual-seo-comparison.md +0 -30
  116. package/blog/zh/rag_powered_documentation_assistant.md +0 -191
  117. package/blog/zh/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
  118. package/blog/zh/vue-i18n_vs_intlayer.md +8 -0
  119. package/docs/ar/CI_CD.md +4 -0
  120. package/docs/ar/autoFill.md +81 -0
  121. package/docs/ar/benchmark/solid.md +22 -0
  122. package/docs/ar/benchmark/svelte.md +22 -0
  123. package/docs/ar/benchmark/tanstack.md +22 -0
  124. package/docs/ar/cli/ci.md +22 -0
  125. package/docs/ar/cli/fill.md +8 -0
  126. package/docs/ar/compat/i18n-js.md +44 -0
  127. package/docs/ar/compat/i18next.md +59 -0
  128. package/docs/ar/compat/index.md +51 -0
  129. package/docs/ar/compat/lingui.md +44 -0
  130. package/docs/ar/compat/next-i18next.md +57 -0
  131. package/docs/ar/compat/next-intl.md +59 -0
  132. package/docs/ar/compat/next-translate.md +45 -0
  133. package/docs/ar/compat/ngx-translate.md +45 -0
  134. package/docs/ar/compat/nuxtjs-i18n.md +46 -0
  135. package/docs/ar/compat/polyglot.md +45 -0
  136. package/docs/ar/compat/react-i18next.md +58 -0
  137. package/docs/ar/compat/react-intl.md +55 -0
  138. package/docs/ar/compat/svelte-i18n.md +47 -0
  139. package/docs/ar/compat/transloco.md +45 -0
  140. package/docs/ar/compat/vue-i18n.md +58 -0
  141. package/docs/ar/compiler.md +3 -1
  142. package/docs/ar/configuration.md +19 -17
  143. package/docs/ar/custom_domains.md +1 -1
  144. package/docs/ar/custom_url_rewrites.md +1 -1
  145. package/docs/ar/dictionary/content_file.md +4 -7
  146. package/docs/ar/dictionary/enumeration.md +0 -187
  147. package/docs/ar/dictionary/file.md +8 -0
  148. package/docs/ar/dictionary/nesting.md +39 -0
  149. package/docs/ar/dictionary/translation.md +0 -61
  150. package/docs/ar/formatters.md +59 -0
  151. package/docs/ar/how_works_intlayer.md +4 -0
  152. package/docs/ar/interest_of_intlayer.md +193 -0
  153. package/docs/ar/intlayer_CMS.md +6 -0
  154. package/docs/ar/intlayer_with_astro.md +129 -2
  155. package/docs/ar/intlayer_with_astro_lit.md +1 -1
  156. package/docs/ar/intlayer_with_astro_preact.md +1 -1
  157. package/docs/ar/intlayer_with_astro_react.md +1 -1
  158. package/docs/ar/intlayer_with_astro_solid.md +1 -1
  159. package/docs/ar/intlayer_with_astro_svelte.md +1 -1
  160. package/docs/ar/intlayer_with_astro_vanilla.md +1 -1
  161. package/docs/ar/intlayer_with_astro_vue.md +1 -1
  162. package/docs/ar/intlayer_with_create_react_app.md +0 -14
  163. package/docs/ar/intlayer_with_express.md +0 -21
  164. package/docs/ar/intlayer_with_nestjs.md +0 -18
  165. package/docs/ar/intlayer_with_nextjs_14.md +30 -7
  166. package/docs/ar/intlayer_with_nextjs_15.md +21 -1
  167. package/docs/ar/intlayer_with_nextjs_16.md +124 -2
  168. package/docs/ar/intlayer_with_nextjs_compiler.md +1 -1
  169. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1 -1
  170. package/docs/ar/intlayer_with_nextjs_page_router.md +5 -1
  171. package/docs/ar/intlayer_with_react_native+expo.md +36 -0
  172. package/docs/ar/intlayer_with_react_router_v7.md +1 -95
  173. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +20 -96
  174. package/docs/ar/intlayer_with_svelte_kit.md +1 -207
  175. package/docs/ar/intlayer_with_tanstack+solid.md +3 -1
  176. package/docs/ar/intlayer_with_tanstack.md +1 -1
  177. package/docs/ar/intlayer_with_vite+lit.md +1 -1
  178. package/docs/ar/intlayer_with_vite+preact.md +40 -40
  179. package/docs/ar/intlayer_with_vite+react.md +1 -1
  180. package/docs/ar/intlayer_with_vite+react_compiler.md +1 -1
  181. package/docs/ar/intlayer_with_vite+solid.md +25 -25
  182. package/docs/ar/intlayer_with_vite+svelte.md +12 -12
  183. package/docs/ar/intlayer_with_vite+vanilla.md +1 -1
  184. package/docs/ar/intlayer_with_vite+vue.md +44 -114
  185. package/docs/ar/mcp_server.md +22 -0
  186. package/docs/ar/migration_from_i18next_to_intlayer.md +333 -0
  187. package/docs/ar/migration_from_next-i18next_to_intlayer.md +355 -0
  188. package/docs/ar/migration_from_next-intl_to_intlayer.md +364 -0
  189. package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  190. package/docs/ar/migration_from_react-i18next_to_intlayer.md +384 -0
  191. package/docs/ar/migration_from_vue-i18n_to_intlayer.md +359 -0
  192. package/docs/ar/packages/intlayer/getLocalizedUrl.md +73 -0
  193. package/docs/ar/packages/intlayer/getMultilingualUrls.md +111 -0
  194. package/docs/ar/packages/intlayer/getPathWithoutLocale.md +0 -4
  195. package/docs/ar/packages/react-intlayer/t.md +0 -13
  196. package/docs/ar/packages/react-intlayer/useDictionary.md +0 -104
  197. package/docs/ar/packages/react-intlayer/useI18n.md +0 -4
  198. package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -55
  199. package/docs/ar/releases/v6.md +28 -0
  200. package/docs/ar/releases/v7.md +128 -0
  201. package/docs/ar/releases/v9.md +37 -1
  202. package/docs/ar/roadmap.md +6 -0
  203. package/docs/de/CI_CD.md +4 -0
  204. package/docs/de/autoFill.md +81 -0
  205. package/docs/de/benchmark/solid.md +22 -0
  206. package/docs/de/benchmark/svelte.md +22 -0
  207. package/docs/de/benchmark/tanstack.md +22 -0
  208. package/docs/de/cli/ci.md +22 -0
  209. package/docs/de/cli/fill.md +8 -0
  210. package/docs/de/cli/init.md +20 -0
  211. package/docs/de/compat/i18n-js.md +44 -0
  212. package/docs/de/compat/i18next.md +59 -0
  213. package/docs/de/compat/index.md +51 -0
  214. package/docs/de/compat/lingui.md +44 -0
  215. package/docs/de/compat/next-i18next.md +57 -0
  216. package/docs/de/compat/next-intl.md +59 -0
  217. package/docs/de/compat/next-translate.md +45 -0
  218. package/docs/de/compat/ngx-translate.md +45 -0
  219. package/docs/de/compat/nuxtjs-i18n.md +46 -0
  220. package/docs/de/compat/polyglot.md +45 -0
  221. package/docs/de/compat/react-i18next.md +58 -0
  222. package/docs/de/compat/react-intl.md +55 -0
  223. package/docs/de/compat/svelte-i18n.md +47 -0
  224. package/docs/de/compat/transloco.md +45 -0
  225. package/docs/de/compat/vue-i18n.md +58 -0
  226. package/docs/de/compiler.md +3 -1
  227. package/docs/de/configuration.md +19 -17
  228. package/docs/de/custom_domains.md +1 -1
  229. package/docs/de/custom_url_rewrites.md +1 -1
  230. package/docs/de/dictionary/content_file.md +4 -0
  231. package/docs/de/dictionary/enumeration.md +0 -199
  232. package/docs/de/dictionary/file.md +8 -0
  233. package/docs/de/dictionary/insertion.md +0 -4
  234. package/docs/de/dictionary/nesting.md +39 -0
  235. package/docs/de/dictionary/translation.md +0 -61
  236. package/docs/de/dynamic_dictionaries/index.md +6 -0
  237. package/docs/de/formatters.md +130 -0
  238. package/docs/de/how_works_intlayer.md +4 -0
  239. package/docs/de/intlayer_CMS.md +6 -0
  240. package/docs/de/intlayer_with_astro.md +129 -2
  241. package/docs/de/intlayer_with_astro_lit.md +1 -1
  242. package/docs/de/intlayer_with_astro_preact.md +1 -1
  243. package/docs/de/intlayer_with_astro_react.md +1 -1
  244. package/docs/de/intlayer_with_astro_solid.md +1 -1
  245. package/docs/de/intlayer_with_astro_svelte.md +1 -1
  246. package/docs/de/intlayer_with_astro_vanilla.md +1 -1
  247. package/docs/de/intlayer_with_astro_vue.md +1 -1
  248. package/docs/de/intlayer_with_create_react_app.md +15 -0
  249. package/docs/de/intlayer_with_express.md +0 -23
  250. package/docs/de/intlayer_with_lynx+react.md +4 -2
  251. package/docs/de/intlayer_with_nestjs.md +0 -8
  252. package/docs/de/intlayer_with_nextjs_14.md +28 -7
  253. package/docs/de/intlayer_with_nextjs_15.md +21 -1
  254. package/docs/de/intlayer_with_nextjs_16.md +1 -1
  255. package/docs/de/intlayer_with_nextjs_compiler.md +49 -1
  256. package/docs/de/intlayer_with_nextjs_no_locale_path.md +1 -1
  257. package/docs/de/intlayer_with_nextjs_page_router.md +5 -1
  258. package/docs/de/intlayer_with_react_native+expo.md +36 -0
  259. package/docs/de/intlayer_with_react_router_v7.md +1 -95
  260. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +1 -91
  261. package/docs/de/intlayer_with_svelte_kit.md +1 -207
  262. package/docs/de/intlayer_with_tanstack+solid.md +3 -1
  263. package/docs/de/intlayer_with_tanstack.md +1 -1
  264. package/docs/de/intlayer_with_vite+lit.md +1 -1
  265. package/docs/de/intlayer_with_vite+preact.md +61 -57
  266. package/docs/de/intlayer_with_vite+react.md +1 -1
  267. package/docs/de/intlayer_with_vite+react_compiler.md +1 -1
  268. package/docs/de/intlayer_with_vite+solid.md +33 -42
  269. package/docs/de/intlayer_with_vite+svelte.md +27 -29
  270. package/docs/de/intlayer_with_vite+vanilla.md +1 -1
  271. package/docs/de/intlayer_with_vite+vue.md +54 -102
  272. package/docs/de/mcp_server.md +22 -0
  273. package/docs/de/packages/intlayer/getLocalizedUrl.md +75 -0
  274. package/docs/de/packages/intlayer/getMultilingualUrls.md +111 -0
  275. package/docs/de/packages/react-intlayer/useDictionary.md +0 -116
  276. package/docs/de/packages/react-intlayer/useIntlayer.md +0 -51
  277. package/docs/de/releases/v6.md +10 -6
  278. package/docs/de/releases/v7.md +128 -0
  279. package/docs/de/releases/v9.md +37 -1
  280. package/docs/de/roadmap.md +6 -16
  281. package/docs/en/bundle_optimization.md +8 -3
  282. package/docs/en/compiler.md +12 -6
  283. package/docs/en/configuration.md +22 -8
  284. package/docs/en/custom_domains.md +2 -0
  285. package/docs/en/custom_url_rewrites.md +2 -0
  286. package/docs/en/intlayer_with_astro.md +2 -0
  287. package/docs/en/intlayer_with_astro_lit.md +2 -0
  288. package/docs/en/intlayer_with_astro_preact.md +2 -0
  289. package/docs/en/intlayer_with_astro_react.md +2 -0
  290. package/docs/en/intlayer_with_astro_solid.md +2 -0
  291. package/docs/en/intlayer_with_astro_svelte.md +2 -0
  292. package/docs/en/intlayer_with_astro_vanilla.md +2 -0
  293. package/docs/en/intlayer_with_astro_vue.md +2 -0
  294. package/docs/en/intlayer_with_nextjs_14.md +2 -0
  295. package/docs/en/intlayer_with_nextjs_15.md +2 -0
  296. package/docs/en/intlayer_with_nextjs_16.md +2 -0
  297. package/docs/en/intlayer_with_nextjs_compiler.md +2 -0
  298. package/docs/en/intlayer_with_nextjs_no_locale_path.md +2 -0
  299. package/docs/en/intlayer_with_nextjs_page_router.md +2 -0
  300. package/docs/en/intlayer_with_react_native+expo.md +8 -0
  301. package/docs/en/intlayer_with_react_router_v7.md +2 -0
  302. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +2 -0
  303. package/docs/en/intlayer_with_svelte_kit.md +4 -0
  304. package/docs/en/intlayer_with_tanstack+solid.md +2 -0
  305. package/docs/en/intlayer_with_tanstack.md +2 -0
  306. package/docs/en/intlayer_with_vite+lit.md +2 -0
  307. package/docs/en/intlayer_with_vite+preact.md +2 -0
  308. package/docs/en/intlayer_with_vite+react.md +2 -0
  309. package/docs/en/intlayer_with_vite+react_compiler.md +2 -0
  310. package/docs/en/intlayer_with_vite+solid.md +2 -0
  311. package/docs/en/intlayer_with_vite+svelte.md +2 -0
  312. package/docs/en/intlayer_with_vite+vanilla.md +4 -0
  313. package/docs/en/intlayer_with_vite+vue.md +2 -0
  314. package/docs/en/releases/v9.md +38 -1
  315. package/docs/en-GB/CI_CD.md +4 -0
  316. package/docs/en-GB/autoFill.md +81 -0
  317. package/docs/en-GB/benchmark/solid.md +22 -0
  318. package/docs/en-GB/benchmark/svelte.md +22 -0
  319. package/docs/en-GB/benchmark/tanstack.md +22 -0
  320. package/docs/en-GB/cli/ci.md +22 -0
  321. package/docs/en-GB/cli/fill.md +8 -0
  322. package/docs/en-GB/cli/login.md +0 -36
  323. package/docs/en-GB/cli/test.md +0 -36
  324. package/docs/en-GB/compat/i18n-js.md +44 -0
  325. package/docs/en-GB/compat/i18next.md +59 -0
  326. package/docs/en-GB/compat/index.md +51 -0
  327. package/docs/en-GB/compat/lingui.md +44 -0
  328. package/docs/en-GB/compat/next-i18next.md +57 -0
  329. package/docs/en-GB/compat/next-intl.md +59 -0
  330. package/docs/en-GB/compat/next-translate.md +45 -0
  331. package/docs/en-GB/compat/ngx-translate.md +45 -0
  332. package/docs/en-GB/compat/nuxtjs-i18n.md +46 -0
  333. package/docs/en-GB/compat/polyglot.md +45 -0
  334. package/docs/en-GB/compat/react-i18next.md +58 -0
  335. package/docs/en-GB/compat/react-intl.md +55 -0
  336. package/docs/en-GB/compat/svelte-i18n.md +47 -0
  337. package/docs/en-GB/compat/transloco.md +45 -0
  338. package/docs/en-GB/compat/vue-i18n.md +58 -0
  339. package/docs/en-GB/compiler.md +3 -1
  340. package/docs/en-GB/configuration.md +4 -1
  341. package/docs/en-GB/custom_domains.md +1 -1
  342. package/docs/en-GB/custom_url_rewrites.md +1 -1
  343. package/docs/en-GB/dictionary/content_file.md +4 -7
  344. package/docs/en-GB/dictionary/file.md +8 -0
  345. package/docs/en-GB/dictionary/function_fetching.md +0 -4
  346. package/docs/en-GB/dictionary/nesting.md +8 -0
  347. package/docs/en-GB/dictionary/translation.md +0 -61
  348. package/docs/en-GB/formatters.md +59 -0
  349. package/docs/en-GB/how_works_intlayer.md +4 -16
  350. package/docs/en-GB/intlayer_CMS.md +6 -0
  351. package/docs/en-GB/intlayer_with_astro.md +129 -2
  352. package/docs/en-GB/intlayer_with_astro_lit.md +1 -1
  353. package/docs/en-GB/intlayer_with_astro_preact.md +1 -1
  354. package/docs/en-GB/intlayer_with_astro_react.md +1 -1
  355. package/docs/en-GB/intlayer_with_astro_solid.md +1 -1
  356. package/docs/en-GB/intlayer_with_astro_svelte.md +1 -1
  357. package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
  358. package/docs/en-GB/intlayer_with_astro_vue.md +1 -1
  359. package/docs/en-GB/intlayer_with_create_react_app.md +0 -46
  360. package/docs/en-GB/intlayer_with_express.md +0 -23
  361. package/docs/en-GB/intlayer_with_nestjs.md +0 -8
  362. package/docs/en-GB/intlayer_with_nextjs_14.md +13 -5
  363. package/docs/en-GB/intlayer_with_nextjs_15.md +23 -1
  364. package/docs/en-GB/intlayer_with_nextjs_16.md +3 -1
  365. package/docs/en-GB/intlayer_with_nextjs_compiler.md +3 -1
  366. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +3 -1
  367. package/docs/en-GB/intlayer_with_nextjs_page_router.md +5 -1
  368. package/docs/en-GB/intlayer_with_react_native+expo.md +36 -0
  369. package/docs/en-GB/intlayer_with_react_router_v7.md +1 -1
  370. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +20 -1
  371. package/docs/en-GB/intlayer_with_svelte_kit.md +1 -207
  372. package/docs/en-GB/intlayer_with_tanstack+solid.md +3 -1
  373. package/docs/en-GB/intlayer_with_tanstack.md +1 -1
  374. package/docs/en-GB/intlayer_with_vite+lit.md +1 -1
  375. package/docs/en-GB/intlayer_with_vite+preact.md +5 -1
  376. package/docs/en-GB/intlayer_with_vite+react.md +1 -1
  377. package/docs/en-GB/intlayer_with_vite+react_compiler.md +1 -1
  378. package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
  379. package/docs/en-GB/intlayer_with_vite+svelte.md +1 -1
  380. package/docs/en-GB/intlayer_with_vite+vanilla.md +1 -1
  381. package/docs/en-GB/intlayer_with_vite+vue.md +9 -180
  382. package/docs/en-GB/migration_from_i18next_to_intlayer.md +333 -0
  383. package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +355 -0
  384. package/docs/en-GB/migration_from_next-intl_to_intlayer.md +364 -0
  385. package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  386. package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +384 -0
  387. package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +359 -0
  388. package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +75 -0
  389. package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +44 -0
  390. package/docs/en-GB/packages/intlayer/getTranslation.md +0 -16
  391. package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -123
  392. package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -51
  393. package/docs/en-GB/plugins/sync-json.md +0 -59
  394. package/docs/en-GB/releases/v6.md +10 -6
  395. package/docs/en-GB/releases/v7.md +128 -0
  396. package/docs/en-GB/releases/v8.md +190 -0
  397. package/docs/en-GB/releases/v9.md +37 -1
  398. package/docs/en-GB/roadmap.md +6 -0
  399. package/docs/es/CI_CD.md +4 -0
  400. package/docs/es/autoFill.md +81 -0
  401. package/docs/es/benchmark/solid.md +22 -0
  402. package/docs/es/benchmark/svelte.md +22 -0
  403. package/docs/es/benchmark/tanstack.md +22 -0
  404. package/docs/es/cli/ci.md +22 -0
  405. package/docs/es/cli/fill.md +8 -0
  406. package/docs/es/cli/login.md +0 -36
  407. package/docs/es/compat/i18n-js.md +44 -0
  408. package/docs/es/compat/i18next.md +59 -0
  409. package/docs/es/compat/index.md +51 -0
  410. package/docs/es/compat/lingui.md +44 -0
  411. package/docs/es/compat/next-i18next.md +57 -0
  412. package/docs/es/compat/next-intl.md +61 -0
  413. package/docs/es/compat/next-translate.md +45 -0
  414. package/docs/es/compat/ngx-translate.md +45 -0
  415. package/docs/es/compat/nuxtjs-i18n.md +46 -0
  416. package/docs/es/compat/polyglot.md +45 -0
  417. package/docs/es/compat/react-i18next.md +58 -0
  418. package/docs/es/compat/react-intl.md +55 -0
  419. package/docs/es/compat/svelte-i18n.md +47 -0
  420. package/docs/es/compat/transloco.md +45 -0
  421. package/docs/es/compat/vue-i18n.md +58 -0
  422. package/docs/es/compiler.md +3 -1
  423. package/docs/es/configuration.md +19 -17
  424. package/docs/es/custom_domains.md +1 -1
  425. package/docs/es/custom_url_rewrites.md +1 -1
  426. package/docs/es/dictionary/content_file.md +4 -0
  427. package/docs/es/dictionary/file.md +8 -0
  428. package/docs/es/dictionary/nesting.md +39 -0
  429. package/docs/es/dictionary/translation.md +0 -61
  430. package/docs/es/formatters.md +82 -0
  431. package/docs/es/how_works_intlayer.md +4 -4
  432. package/docs/es/intlayer_CMS.md +21 -0
  433. package/docs/es/intlayer_visual_editor.md +0 -23
  434. package/docs/es/intlayer_with_astro.md +129 -2
  435. package/docs/es/intlayer_with_astro_lit.md +1 -1
  436. package/docs/es/intlayer_with_astro_preact.md +1 -1
  437. package/docs/es/intlayer_with_astro_react.md +1 -1
  438. package/docs/es/intlayer_with_astro_solid.md +1 -1
  439. package/docs/es/intlayer_with_astro_svelte.md +1 -1
  440. package/docs/es/intlayer_with_astro_vanilla.md +1 -1
  441. package/docs/es/intlayer_with_astro_vue.md +1 -1
  442. package/docs/es/intlayer_with_express.md +0 -4
  443. package/docs/es/intlayer_with_nestjs.md +0 -18
  444. package/docs/es/intlayer_with_nextjs_14.md +10 -4
  445. package/docs/es/intlayer_with_nextjs_15.md +21 -1
  446. package/docs/es/intlayer_with_nextjs_16.md +1 -1
  447. package/docs/es/intlayer_with_nextjs_compiler.md +1 -1
  448. package/docs/es/intlayer_with_nextjs_no_locale_path.md +1 -1
  449. package/docs/es/intlayer_with_nextjs_page_router.md +5 -1
  450. package/docs/es/intlayer_with_react_native+expo.md +36 -0
  451. package/docs/es/intlayer_with_react_router_v7.md +1 -95
  452. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +1 -1
  453. package/docs/es/intlayer_with_svelte_kit.md +1 -207
  454. package/docs/es/intlayer_with_tanstack+solid.md +3 -1
  455. package/docs/es/intlayer_with_tanstack.md +1 -1
  456. package/docs/es/intlayer_with_vite+lit.md +1 -1
  457. package/docs/es/intlayer_with_vite+preact.md +5 -1
  458. package/docs/es/intlayer_with_vite+react.md +1 -1
  459. package/docs/es/intlayer_with_vite+react_compiler.md +1 -1
  460. package/docs/es/intlayer_with_vite+solid.md +1 -1
  461. package/docs/es/intlayer_with_vite+svelte.md +1 -1
  462. package/docs/es/intlayer_with_vite+vanilla.md +1 -1
  463. package/docs/es/intlayer_with_vite+vue.md +18 -86
  464. package/docs/es/packages/express-intlayer/t.md +0 -9
  465. package/docs/es/packages/intlayer/getLocalizedUrl.md +75 -0
  466. package/docs/es/packages/intlayer/getMultilingualUrls.md +112 -0
  467. package/docs/es/packages/react-intlayer/useDictionary.md +0 -119
  468. package/docs/es/packages/react-intlayer/useIntlayer.md +0 -51
  469. package/docs/es/releases/v6.md +28 -0
  470. package/docs/es/releases/v7.md +128 -0
  471. package/docs/es/releases/v9.md +37 -1
  472. package/docs/es/roadmap.md +6 -0
  473. package/docs/fr/CI_CD.md +4 -0
  474. package/docs/fr/autoFill.md +81 -0
  475. package/docs/fr/benchmark/solid.md +22 -0
  476. package/docs/fr/benchmark/svelte.md +22 -0
  477. package/docs/fr/benchmark/tanstack.md +22 -0
  478. package/docs/fr/cli/ci.md +22 -0
  479. package/docs/fr/cli/fill.md +8 -0
  480. package/docs/fr/cli/login.md +0 -36
  481. package/docs/fr/compat/i18n-js.md +44 -0
  482. package/docs/fr/compat/i18next.md +59 -0
  483. package/docs/fr/compat/index.md +51 -0
  484. package/docs/fr/compat/lingui.md +44 -0
  485. package/docs/fr/compat/next-i18next.md +57 -0
  486. package/docs/fr/compat/next-intl.md +59 -0
  487. package/docs/fr/compat/next-translate.md +45 -0
  488. package/docs/fr/compat/ngx-translate.md +45 -0
  489. package/docs/fr/compat/nuxtjs-i18n.md +46 -0
  490. package/docs/fr/compat/polyglot.md +45 -0
  491. package/docs/fr/compat/react-i18next.md +58 -0
  492. package/docs/fr/compat/react-intl.md +55 -0
  493. package/docs/fr/compat/svelte-i18n.md +47 -0
  494. package/docs/fr/compat/transloco.md +45 -0
  495. package/docs/fr/compat/vue-i18n.md +58 -0
  496. package/docs/fr/compiler.md +3 -1
  497. package/docs/fr/configuration.md +20 -17
  498. package/docs/fr/custom_domains.md +1 -1
  499. package/docs/fr/custom_url_rewrites.md +14 -14
  500. package/docs/fr/dictionary/content_file.md +4 -0
  501. package/docs/fr/dictionary/enumeration.md +0 -187
  502. package/docs/fr/dictionary/file.md +8 -0
  503. package/docs/fr/dictionary/nesting.md +39 -0
  504. package/docs/fr/dictionary/translation.md +0 -61
  505. package/docs/fr/formatters.md +171 -77
  506. package/docs/fr/how_works_intlayer.md +4 -0
  507. package/docs/fr/intlayer_CMS.md +6 -0
  508. package/docs/fr/intlayer_with_astro.md +129 -2
  509. package/docs/fr/intlayer_with_astro_lit.md +1 -1
  510. package/docs/fr/intlayer_with_astro_preact.md +1 -1
  511. package/docs/fr/intlayer_with_astro_react.md +1 -1
  512. package/docs/fr/intlayer_with_astro_solid.md +1 -1
  513. package/docs/fr/intlayer_with_astro_svelte.md +1 -1
  514. package/docs/fr/intlayer_with_astro_vanilla.md +1 -1
  515. package/docs/fr/intlayer_with_astro_vue.md +1 -1
  516. package/docs/fr/intlayer_with_create_react_app.md +0 -14
  517. package/docs/fr/intlayer_with_express.md +0 -4
  518. package/docs/fr/intlayer_with_nestjs.md +0 -18
  519. package/docs/fr/intlayer_with_nextjs_14.md +26 -5
  520. package/docs/fr/intlayer_with_nextjs_15.md +21 -1
  521. package/docs/fr/intlayer_with_nextjs_16.md +1 -1
  522. package/docs/fr/intlayer_with_nextjs_compiler.md +1 -1
  523. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1 -1
  524. package/docs/fr/intlayer_with_nextjs_page_router.md +5 -1
  525. package/docs/fr/intlayer_with_nuxt.md +0 -27
  526. package/docs/fr/intlayer_with_react_native+expo.md +36 -0
  527. package/docs/fr/intlayer_with_react_router_v7.md +1 -95
  528. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +1 -100
  529. package/docs/fr/intlayer_with_svelte_kit.md +1 -239
  530. package/docs/fr/intlayer_with_tanstack+solid.md +3 -1
  531. package/docs/fr/intlayer_with_tanstack.md +1 -1
  532. package/docs/fr/intlayer_with_vite+lit.md +1 -1
  533. package/docs/fr/intlayer_with_vite+preact.md +5 -1
  534. package/docs/fr/intlayer_with_vite+react.md +1 -1
  535. package/docs/fr/intlayer_with_vite+react_compiler.md +1 -1
  536. package/docs/fr/intlayer_with_vite+solid.md +1 -1
  537. package/docs/fr/intlayer_with_vite+svelte.md +1 -1
  538. package/docs/fr/intlayer_with_vite+vanilla.md +1 -1
  539. package/docs/fr/intlayer_with_vite+vue.md +13 -83
  540. package/docs/fr/packages/express-intlayer/t.md +0 -9
  541. package/docs/fr/packages/intlayer/getLocalizedUrl.md +73 -0
  542. package/docs/fr/packages/intlayer/getMultilingualUrls.md +99 -0
  543. package/docs/fr/packages/next-intlayer/t.md +1 -1
  544. package/docs/fr/packages/next-intlayer/useRewriteURL.md +0 -8
  545. package/docs/fr/packages/react-intlayer/useDictionary.md +33 -149
  546. package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -51
  547. package/docs/fr/plugins/sync-json.md +0 -59
  548. package/docs/fr/releases/v6.md +28 -0
  549. package/docs/fr/releases/v7.md +128 -0
  550. package/docs/fr/releases/v9.md +37 -1
  551. package/docs/fr/roadmap.md +6 -0
  552. package/docs/hi/CI_CD.md +4 -0
  553. package/docs/hi/autoFill.md +81 -0
  554. package/docs/hi/benchmark/solid.md +22 -0
  555. package/docs/hi/benchmark/svelte.md +22 -0
  556. package/docs/hi/benchmark/tanstack.md +22 -0
  557. package/docs/hi/cli/ci.md +22 -0
  558. package/docs/hi/cli/fill.md +8 -0
  559. package/docs/hi/cli/login.md +0 -36
  560. package/docs/hi/compat/i18n-js.md +44 -0
  561. package/docs/hi/compat/i18next.md +59 -0
  562. package/docs/hi/compat/index.md +51 -0
  563. package/docs/hi/compat/lingui.md +44 -0
  564. package/docs/hi/compat/next-i18next.md +57 -0
  565. package/docs/hi/compat/next-intl.md +59 -0
  566. package/docs/hi/compat/next-translate.md +45 -0
  567. package/docs/hi/compat/ngx-translate.md +45 -0
  568. package/docs/hi/compat/nuxtjs-i18n.md +46 -0
  569. package/docs/hi/compat/polyglot.md +45 -0
  570. package/docs/hi/compat/react-i18next.md +58 -0
  571. package/docs/hi/compat/react-intl.md +55 -0
  572. package/docs/hi/compat/svelte-i18n.md +47 -0
  573. package/docs/hi/compat/transloco.md +45 -0
  574. package/docs/hi/compat/vue-i18n.md +58 -0
  575. package/docs/hi/compiler.md +3 -1
  576. package/docs/hi/configuration.md +19 -17
  577. package/docs/hi/custom_domains.md +1 -1
  578. package/docs/hi/custom_url_rewrites.md +1 -1
  579. package/docs/hi/dictionary/enumeration.md +0 -187
  580. package/docs/hi/dictionary/file.md +8 -0
  581. package/docs/hi/dictionary/nesting.md +39 -0
  582. package/docs/hi/dictionary/translation.md +0 -61
  583. package/docs/hi/formatters.md +85 -0
  584. package/docs/hi/how_works_intlayer.md +2 -0
  585. package/docs/hi/interest_of_intlayer.md +194 -0
  586. package/docs/hi/intlayer_CMS.md +6 -0
  587. package/docs/hi/intlayer_with_astro.md +130 -3
  588. package/docs/hi/intlayer_with_astro_lit.md +1 -1
  589. package/docs/hi/intlayer_with_astro_preact.md +1 -1
  590. package/docs/hi/intlayer_with_astro_react.md +1 -1
  591. package/docs/hi/intlayer_with_astro_solid.md +1 -1
  592. package/docs/hi/intlayer_with_astro_svelte.md +1 -1
  593. package/docs/hi/intlayer_with_astro_vanilla.md +1 -1
  594. package/docs/hi/intlayer_with_astro_vue.md +1 -1
  595. package/docs/hi/intlayer_with_create_react_app.md +15 -0
  596. package/docs/hi/intlayer_with_express.md +0 -23
  597. package/docs/hi/intlayer_with_nestjs.md +0 -8
  598. package/docs/hi/intlayer_with_nextjs_14.md +31 -8
  599. package/docs/hi/intlayer_with_nextjs_15.md +21 -1
  600. package/docs/hi/intlayer_with_nextjs_16.md +176 -54
  601. package/docs/hi/intlayer_with_nextjs_compiler.md +1 -1
  602. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1 -1
  603. package/docs/hi/intlayer_with_nextjs_page_router.md +5 -1
  604. package/docs/hi/intlayer_with_nuxt.md +0 -27
  605. package/docs/hi/intlayer_with_react_native+expo.md +36 -0
  606. package/docs/hi/intlayer_with_react_router_v7.md +1 -95
  607. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +20 -96
  608. package/docs/hi/intlayer_with_svelte_kit.md +1 -207
  609. package/docs/hi/intlayer_with_tanstack+solid.md +3 -1
  610. package/docs/hi/intlayer_with_tanstack.md +1 -1
  611. package/docs/hi/intlayer_with_vite+lit.md +1 -1
  612. package/docs/hi/intlayer_with_vite+preact.md +1 -1
  613. package/docs/hi/intlayer_with_vite+react.md +1 -1
  614. package/docs/hi/intlayer_with_vite+react_compiler.md +1 -1
  615. package/docs/hi/intlayer_with_vite+solid.md +1 -1
  616. package/docs/hi/intlayer_with_vite+svelte.md +32 -48
  617. package/docs/hi/intlayer_with_vite+vanilla.md +1 -1
  618. package/docs/hi/intlayer_with_vite+vue.md +23 -71
  619. package/docs/hi/mcp_server.md +22 -0
  620. package/docs/hi/migration_from_i18next_to_intlayer.md +331 -0
  621. package/docs/hi/migration_from_next-i18next_to_intlayer.md +355 -0
  622. package/docs/hi/migration_from_next-intl_to_intlayer.md +364 -0
  623. package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  624. package/docs/hi/migration_from_react-i18next_to_intlayer.md +384 -0
  625. package/docs/hi/migration_from_vue-i18n_to_intlayer.md +359 -0
  626. package/docs/hi/packages/intlayer/getLocalizedUrl.md +68 -0
  627. package/docs/hi/packages/intlayer/getMultilingualUrls.md +111 -0
  628. package/docs/hi/packages/next-intlayer/t.md +2 -0
  629. package/docs/hi/packages/react-intlayer/useDictionary.md +0 -102
  630. package/docs/hi/packages/react-intlayer/useI18n.md +0 -4
  631. package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -51
  632. package/docs/hi/releases/v6.md +28 -0
  633. package/docs/hi/releases/v7.md +128 -0
  634. package/docs/hi/releases/v9.md +37 -1
  635. package/docs/hi/roadmap.md +6 -0
  636. package/docs/id/autoFill.md +20 -0
  637. package/docs/id/benchmark/solid.md +22 -0
  638. package/docs/id/benchmark/svelte.md +22 -0
  639. package/docs/id/benchmark/tanstack.md +22 -0
  640. package/docs/id/cli/ci.md +22 -0
  641. package/docs/id/cli/fill.md +8 -0
  642. package/docs/id/compat/i18n-js.md +44 -0
  643. package/docs/id/compat/i18next.md +59 -0
  644. package/docs/id/compat/index.md +51 -0
  645. package/docs/id/compat/lingui.md +44 -0
  646. package/docs/id/compat/next-i18next.md +57 -0
  647. package/docs/id/compat/next-intl.md +59 -0
  648. package/docs/id/compat/next-translate.md +45 -0
  649. package/docs/id/compat/ngx-translate.md +45 -0
  650. package/docs/id/compat/nuxtjs-i18n.md +46 -0
  651. package/docs/id/compat/polyglot.md +45 -0
  652. package/docs/id/compat/react-i18next.md +58 -0
  653. package/docs/id/compat/react-intl.md +55 -0
  654. package/docs/id/compat/svelte-i18n.md +47 -0
  655. package/docs/id/compat/transloco.md +45 -0
  656. package/docs/id/compat/vue-i18n.md +58 -0
  657. package/docs/id/compiler.md +3 -1
  658. package/docs/id/configuration.md +19 -17
  659. package/docs/id/custom_domains.md +1 -1
  660. package/docs/id/custom_url_rewrites.md +14 -16
  661. package/docs/id/dictionary/content_file.md +0 -7
  662. package/docs/id/dictionary/enumeration.md +0 -187
  663. package/docs/id/dictionary/nesting.md +39 -0
  664. package/docs/id/dictionary/translation.md +0 -61
  665. package/docs/id/formatters.md +120 -0
  666. package/docs/id/interest_of_intlayer.md +193 -0
  667. package/docs/id/intlayer_with_astro.md +130 -3
  668. package/docs/id/intlayer_with_astro_lit.md +1 -1
  669. package/docs/id/intlayer_with_astro_preact.md +1 -1
  670. package/docs/id/intlayer_with_astro_react.md +1 -1
  671. package/docs/id/intlayer_with_astro_solid.md +1 -1
  672. package/docs/id/intlayer_with_astro_svelte.md +1 -1
  673. package/docs/id/intlayer_with_astro_vanilla.md +1 -1
  674. package/docs/id/intlayer_with_astro_vue.md +1 -1
  675. package/docs/id/intlayer_with_nextjs_14.md +1 -1
  676. package/docs/id/intlayer_with_nextjs_15.md +1 -1
  677. package/docs/id/intlayer_with_nextjs_16.md +176 -54
  678. package/docs/id/intlayer_with_nextjs_compiler.md +1 -22
  679. package/docs/id/intlayer_with_nextjs_no_locale_path.md +1 -1
  680. package/docs/id/intlayer_with_nextjs_page_router.md +1 -1
  681. package/docs/id/intlayer_with_react_native+expo.md +8 -61
  682. package/docs/id/intlayer_with_react_router_v7.md +1 -95
  683. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +1 -103
  684. package/docs/id/intlayer_with_svelte_kit.md +1 -207
  685. package/docs/id/intlayer_with_tanstack+solid.md +3 -1
  686. package/docs/id/intlayer_with_tanstack.md +1 -1
  687. package/docs/id/intlayer_with_vite+lit.md +1 -1
  688. package/docs/id/intlayer_with_vite+preact.md +57 -57
  689. package/docs/id/intlayer_with_vite+react.md +49 -49
  690. package/docs/id/intlayer_with_vite+react_compiler.md +1 -1
  691. package/docs/id/intlayer_with_vite+solid.md +33 -42
  692. package/docs/id/intlayer_with_vite+svelte.md +27 -29
  693. package/docs/id/intlayer_with_vite+vanilla.md +1 -1
  694. package/docs/id/intlayer_with_vite+vue.md +49 -101
  695. package/docs/id/mcp_server.md +22 -0
  696. package/docs/id/migration_from_i18next_to_intlayer.md +330 -0
  697. package/docs/id/migration_from_next-i18next_to_intlayer.md +355 -0
  698. package/docs/id/migration_from_next-intl_to_intlayer.md +364 -0
  699. package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  700. package/docs/id/migration_from_react-i18next_to_intlayer.md +384 -0
  701. package/docs/id/migration_from_vue-i18n_to_intlayer.md +359 -0
  702. package/docs/id/packages/intlayer/getLocalizedUrl.md +25 -0
  703. package/docs/id/packages/intlayer/getMultilingualUrls.md +112 -0
  704. package/docs/id/packages/react-intlayer/useDictionary.md +0 -121
  705. package/docs/id/packages/react-intlayer/useIntlayer.md +0 -51
  706. package/docs/id/releases/v6.md +4 -0
  707. package/docs/id/releases/v7.md +128 -0
  708. package/docs/id/releases/v9.md +37 -1
  709. package/docs/id/roadmap.md +0 -16
  710. package/docs/it/CI_CD.md +4 -0
  711. package/docs/it/autoFill.md +81 -0
  712. package/docs/it/benchmark/solid.md +22 -0
  713. package/docs/it/benchmark/svelte.md +22 -0
  714. package/docs/it/benchmark/tanstack.md +22 -0
  715. package/docs/it/cli/ci.md +22 -0
  716. package/docs/it/cli/fill.md +8 -0
  717. package/docs/it/compat/i18n-js.md +44 -0
  718. package/docs/it/compat/i18next.md +59 -0
  719. package/docs/it/compat/index.md +51 -0
  720. package/docs/it/compat/lingui.md +44 -0
  721. package/docs/it/compat/next-i18next.md +57 -0
  722. package/docs/it/compat/next-intl.md +59 -0
  723. package/docs/it/compat/next-translate.md +45 -0
  724. package/docs/it/compat/ngx-translate.md +45 -0
  725. package/docs/it/compat/nuxtjs-i18n.md +46 -0
  726. package/docs/it/compat/polyglot.md +45 -0
  727. package/docs/it/compat/react-i18next.md +58 -0
  728. package/docs/it/compat/react-intl.md +55 -0
  729. package/docs/it/compat/svelte-i18n.md +47 -0
  730. package/docs/it/compat/transloco.md +45 -0
  731. package/docs/it/compat/vue-i18n.md +58 -0
  732. package/docs/it/compiler.md +3 -1
  733. package/docs/it/configuration.md +19 -17
  734. package/docs/it/custom_domains.md +1 -1
  735. package/docs/it/custom_url_rewrites.md +1 -1
  736. package/docs/it/dictionary/content_file.md +4 -7
  737. package/docs/it/dictionary/enumeration.md +0 -197
  738. package/docs/it/dictionary/file.md +8 -0
  739. package/docs/it/dictionary/nesting.md +39 -0
  740. package/docs/it/dictionary/translation.md +0 -61
  741. package/docs/it/formatters.md +82 -0
  742. package/docs/it/how_works_intlayer.md +4 -4
  743. package/docs/it/intlayer_CMS.md +6 -0
  744. package/docs/it/intlayer_with_astro.md +129 -2
  745. package/docs/it/intlayer_with_astro_lit.md +1 -1
  746. package/docs/it/intlayer_with_astro_preact.md +1 -1
  747. package/docs/it/intlayer_with_astro_react.md +1 -1
  748. package/docs/it/intlayer_with_astro_solid.md +1 -1
  749. package/docs/it/intlayer_with_astro_svelte.md +1 -1
  750. package/docs/it/intlayer_with_astro_vanilla.md +1 -1
  751. package/docs/it/intlayer_with_astro_vue.md +1 -1
  752. package/docs/it/intlayer_with_create_react_app.md +0 -14
  753. package/docs/it/intlayer_with_express.md +0 -4
  754. package/docs/it/intlayer_with_lynx+react.md +11 -0
  755. package/docs/it/intlayer_with_nestjs.md +0 -8
  756. package/docs/it/intlayer_with_nextjs_14.md +30 -9
  757. package/docs/it/intlayer_with_nextjs_15.md +21 -1
  758. package/docs/it/intlayer_with_nextjs_16.md +176 -54
  759. package/docs/it/intlayer_with_nextjs_compiler.md +1 -1
  760. package/docs/it/intlayer_with_nextjs_no_locale_path.md +1 -1
  761. package/docs/it/intlayer_with_nextjs_page_router.md +5 -1
  762. package/docs/it/intlayer_with_react_native+expo.md +36 -0
  763. package/docs/it/intlayer_with_react_router_v7.md +1 -95
  764. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +1 -96
  765. package/docs/it/intlayer_with_svelte_kit.md +1 -239
  766. package/docs/it/intlayer_with_tanstack+solid.md +3 -1
  767. package/docs/it/intlayer_with_tanstack.md +1 -1
  768. package/docs/it/intlayer_with_vite+lit.md +1 -1
  769. package/docs/it/intlayer_with_vite+preact.md +61 -57
  770. package/docs/it/intlayer_with_vite+react.md +49 -1
  771. package/docs/it/intlayer_with_vite+react_compiler.md +1 -1
  772. package/docs/it/intlayer_with_vite+solid.md +33 -42
  773. package/docs/it/intlayer_with_vite+svelte.md +27 -29
  774. package/docs/it/intlayer_with_vite+vanilla.md +1 -1
  775. package/docs/it/intlayer_with_vite+vue.md +53 -123
  776. package/docs/it/mcp_server.md +22 -0
  777. package/docs/it/packages/intlayer/getLocalizedUrl.md +75 -0
  778. package/docs/it/packages/intlayer/getMultilingualUrls.md +112 -0
  779. package/docs/it/packages/next-intlayer/t.md +34 -0
  780. package/docs/it/packages/react-intlayer/useDictionary.md +0 -104
  781. package/docs/it/packages/react-intlayer/useIntlayer.md +0 -57
  782. package/docs/it/releases/v6.md +28 -0
  783. package/docs/it/releases/v7.md +128 -0
  784. package/docs/it/releases/v9.md +37 -1
  785. package/docs/it/roadmap.md +6 -0
  786. package/docs/ja/CI_CD.md +4 -0
  787. package/docs/ja/autoFill.md +81 -0
  788. package/docs/ja/benchmark/solid.md +22 -0
  789. package/docs/ja/benchmark/svelte.md +22 -0
  790. package/docs/ja/benchmark/tanstack.md +22 -0
  791. package/docs/ja/cli/ci.md +22 -0
  792. package/docs/ja/cli/fill.md +8 -0
  793. package/docs/ja/cli/list_projects.md +0 -18
  794. package/docs/ja/compat/i18n-js.md +44 -0
  795. package/docs/ja/compat/i18next.md +59 -0
  796. package/docs/ja/compat/index.md +51 -0
  797. package/docs/ja/compat/lingui.md +44 -0
  798. package/docs/ja/compat/next-i18next.md +57 -0
  799. package/docs/ja/compat/next-intl.md +59 -0
  800. package/docs/ja/compat/next-translate.md +45 -0
  801. package/docs/ja/compat/ngx-translate.md +45 -0
  802. package/docs/ja/compat/nuxtjs-i18n.md +46 -0
  803. package/docs/ja/compat/polyglot.md +45 -0
  804. package/docs/ja/compat/react-i18next.md +58 -0
  805. package/docs/ja/compat/react-intl.md +55 -0
  806. package/docs/ja/compat/svelte-i18n.md +47 -0
  807. package/docs/ja/compat/transloco.md +45 -0
  808. package/docs/ja/compat/vue-i18n.md +58 -0
  809. package/docs/ja/compiler.md +3 -1
  810. package/docs/ja/configuration.md +19 -17
  811. package/docs/ja/custom_domains.md +1 -1
  812. package/docs/ja/custom_url_rewrites.md +1 -1
  813. package/docs/ja/dictionary/content_file.md +4 -0
  814. package/docs/ja/dictionary/enumeration.md +0 -187
  815. package/docs/ja/dictionary/function_fetching.md +0 -27
  816. package/docs/ja/dictionary/markdown.md +1348 -0
  817. package/docs/ja/dictionary/nesting.md +39 -0
  818. package/docs/ja/dictionary/translation.md +0 -119
  819. package/docs/ja/formatters.md +77 -0
  820. package/docs/ja/how_works_intlayer.md +4 -2
  821. package/docs/ja/intlayer_CMS.md +6 -0
  822. package/docs/ja/intlayer_visual_editor.md +0 -4
  823. package/docs/ja/intlayer_with_analog.md +4 -0
  824. package/docs/ja/intlayer_with_astro.md +129 -2
  825. package/docs/ja/intlayer_with_astro_lit.md +1 -1
  826. package/docs/ja/intlayer_with_astro_preact.md +1 -1
  827. package/docs/ja/intlayer_with_astro_react.md +1 -1
  828. package/docs/ja/intlayer_with_astro_solid.md +1 -1
  829. package/docs/ja/intlayer_with_astro_svelte.md +1 -1
  830. package/docs/ja/intlayer_with_astro_vanilla.md +1 -1
  831. package/docs/ja/intlayer_with_astro_vue.md +1 -1
  832. package/docs/ja/intlayer_with_create_react_app.md +0 -16
  833. package/docs/ja/intlayer_with_express.md +0 -4
  834. package/docs/ja/intlayer_with_nestjs.md +0 -8
  835. package/docs/ja/intlayer_with_nextjs_14.md +26 -20
  836. package/docs/ja/intlayer_with_nextjs_15.md +21 -1
  837. package/docs/ja/intlayer_with_nextjs_16.md +176 -54
  838. package/docs/ja/intlayer_with_nextjs_compiler.md +1 -22
  839. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1 -1
  840. package/docs/ja/intlayer_with_nextjs_page_router.md +5 -1
  841. package/docs/ja/intlayer_with_react_native+expo.md +36 -0
  842. package/docs/ja/intlayer_with_react_router_v7.md +1 -23
  843. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +1 -96
  844. package/docs/ja/intlayer_with_svelte_kit.md +12 -1
  845. package/docs/ja/intlayer_with_tanstack+solid.md +3 -1
  846. package/docs/ja/intlayer_with_tanstack.md +3 -1
  847. package/docs/ja/intlayer_with_vite+lit.md +1 -1
  848. package/docs/ja/intlayer_with_vite+preact.md +704 -1
  849. package/docs/ja/intlayer_with_vite+react.md +1 -1
  850. package/docs/ja/intlayer_with_vite+react_compiler.md +1 -1
  851. package/docs/ja/intlayer_with_vite+solid.md +33 -42
  852. package/docs/ja/intlayer_with_vite+svelte.md +29 -29
  853. package/docs/ja/intlayer_with_vite+vanilla.md +1 -1
  854. package/docs/ja/intlayer_with_vite+vue.md +70 -114
  855. package/docs/ja/mcp_server.md +26 -0
  856. package/docs/ja/packages/express-intlayer/t.md +0 -9
  857. package/docs/ja/packages/intlayer/getLocalizedUrl.md +73 -0
  858. package/docs/ja/packages/intlayer/getMultilingualUrls.md +112 -0
  859. package/docs/ja/packages/react-intlayer/useDictionary.md +0 -107
  860. package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -65
  861. package/docs/ja/releases/v6.md +28 -0
  862. package/docs/ja/releases/v7.md +128 -0
  863. package/docs/ja/releases/v9.md +37 -1
  864. package/docs/ja/roadmap.md +6 -0
  865. package/docs/ko/CI_CD.md +4 -0
  866. package/docs/ko/autoFill.md +81 -0
  867. package/docs/ko/benchmark/solid.md +22 -0
  868. package/docs/ko/benchmark/svelte.md +22 -0
  869. package/docs/ko/benchmark/tanstack.md +22 -0
  870. package/docs/ko/cli/ci.md +22 -0
  871. package/docs/ko/cli/fill.md +8 -0
  872. package/docs/ko/cli/login.md +0 -36
  873. package/docs/ko/compat/i18n-js.md +44 -0
  874. package/docs/ko/compat/i18next.md +59 -0
  875. package/docs/ko/compat/index.md +51 -0
  876. package/docs/ko/compat/lingui.md +44 -0
  877. package/docs/ko/compat/next-i18next.md +55 -0
  878. package/docs/ko/compat/next-intl.md +59 -0
  879. package/docs/ko/compat/next-translate.md +45 -0
  880. package/docs/ko/compat/ngx-translate.md +45 -0
  881. package/docs/ko/compat/nuxtjs-i18n.md +46 -0
  882. package/docs/ko/compat/polyglot.md +45 -0
  883. package/docs/ko/compat/react-i18next.md +58 -0
  884. package/docs/ko/compat/react-intl.md +55 -0
  885. package/docs/ko/compat/svelte-i18n.md +47 -0
  886. package/docs/ko/compat/transloco.md +45 -0
  887. package/docs/ko/compat/vue-i18n.md +58 -0
  888. package/docs/ko/compiler.md +3 -1
  889. package/docs/ko/configuration.md +19 -17
  890. package/docs/ko/custom_domains.md +1 -1
  891. package/docs/ko/custom_url_rewrites.md +1 -1
  892. package/docs/ko/dictionary/content_file.md +4 -27
  893. package/docs/ko/dictionary/enumeration.md +0 -187
  894. package/docs/ko/dictionary/insertion.md +0 -6
  895. package/docs/ko/dictionary/nesting.md +39 -0
  896. package/docs/ko/dictionary/translation.md +0 -84
  897. package/docs/ko/formatters.md +71 -0
  898. package/docs/ko/how_works_intlayer.md +4 -0
  899. package/docs/ko/intlayer_CMS.md +6 -0
  900. package/docs/ko/intlayer_visual_editor.md +0 -2
  901. package/docs/ko/intlayer_with_analog.md +4 -0
  902. package/docs/ko/intlayer_with_astro.md +129 -2
  903. package/docs/ko/intlayer_with_astro_lit.md +1 -1
  904. package/docs/ko/intlayer_with_astro_preact.md +1 -1
  905. package/docs/ko/intlayer_with_astro_react.md +1 -1
  906. package/docs/ko/intlayer_with_astro_solid.md +1 -1
  907. package/docs/ko/intlayer_with_astro_svelte.md +1 -1
  908. package/docs/ko/intlayer_with_astro_vanilla.md +1 -1
  909. package/docs/ko/intlayer_with_astro_vue.md +1 -1
  910. package/docs/ko/intlayer_with_create_react_app.md +0 -14
  911. package/docs/ko/intlayer_with_express.md +0 -23
  912. package/docs/ko/intlayer_with_lynx+react.md +0 -124
  913. package/docs/ko/intlayer_with_nestjs.md +0 -18
  914. package/docs/ko/intlayer_with_nextjs_14.md +19 -13
  915. package/docs/ko/intlayer_with_nextjs_15.md +21 -1
  916. package/docs/ko/intlayer_with_nextjs_16.md +175 -56
  917. package/docs/ko/intlayer_with_nextjs_compiler.md +1 -308
  918. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1 -1
  919. package/docs/ko/intlayer_with_nextjs_page_router.md +5 -1
  920. package/docs/ko/intlayer_with_react_native+expo.md +36 -262
  921. package/docs/ko/intlayer_with_react_router_v7.md +1 -95
  922. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +20 -96
  923. package/docs/ko/intlayer_with_svelte_kit.md +1 -207
  924. package/docs/ko/intlayer_with_tanstack+solid.md +3 -1
  925. package/docs/ko/intlayer_with_tanstack.md +1 -1
  926. package/docs/ko/intlayer_with_vite+lit.md +1 -1
  927. package/docs/ko/intlayer_with_vite+preact.md +57 -91
  928. package/docs/ko/intlayer_with_vite+react.md +93 -18
  929. package/docs/ko/intlayer_with_vite+react_compiler.md +1 -1
  930. package/docs/ko/intlayer_with_vite+solid.md +33 -143
  931. package/docs/ko/intlayer_with_vite+svelte.md +27 -29
  932. package/docs/ko/intlayer_with_vite+vanilla.md +1 -1
  933. package/docs/ko/intlayer_with_vite+vue.md +54 -106
  934. package/docs/ko/mcp_server.md +22 -0
  935. package/docs/ko/packages/express-intlayer/t.md +0 -9
  936. package/docs/ko/packages/intlayer/getLocalizedUrl.md +73 -0
  937. package/docs/ko/packages/intlayer/getMultilingualUrls.md +112 -0
  938. package/docs/ko/packages/next-intlayer/t.md +34 -0
  939. package/docs/ko/packages/next-intlayer/useLocale.md +0 -5
  940. package/docs/ko/packages/react-intlayer/t.md +0 -20
  941. package/docs/ko/packages/react-intlayer/useDictionary.md +0 -121
  942. package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -51
  943. package/docs/ko/releases/v6.md +28 -0
  944. package/docs/ko/releases/v7.md +128 -0
  945. package/docs/ko/releases/v9.md +37 -1
  946. package/docs/ko/roadmap.md +6 -0
  947. package/docs/pl/autoFill.md +20 -0
  948. package/docs/pl/benchmark/___NOTE.md +101 -0
  949. package/docs/pl/benchmark/___nextjs.md +198 -0
  950. package/docs/pl/benchmark/___solid.md +36 -0
  951. package/docs/pl/benchmark/___svelte.md +36 -0
  952. package/docs/pl/benchmark/___tanstack.md +36 -0
  953. package/docs/pl/benchmark/___vue.md +36 -0
  954. package/docs/pl/benchmark/solid.md +22 -0
  955. package/docs/pl/benchmark/svelte.md +22 -0
  956. package/docs/pl/benchmark/tanstack.md +22 -0
  957. package/docs/pl/cli/ci.md +22 -0
  958. package/docs/pl/cli/fill.md +8 -0
  959. package/docs/pl/cli/login.md +0 -36
  960. package/docs/pl/compat/i18n-js.md +44 -0
  961. package/docs/pl/compat/i18next.md +59 -0
  962. package/docs/pl/compat/index.md +51 -0
  963. package/docs/pl/compat/lingui.md +44 -0
  964. package/docs/pl/compat/next-i18next.md +57 -0
  965. package/docs/pl/compat/next-intl.md +59 -0
  966. package/docs/pl/compat/next-translate.md +45 -0
  967. package/docs/pl/compat/ngx-translate.md +45 -0
  968. package/docs/pl/compat/nuxtjs-i18n.md +46 -0
  969. package/docs/pl/compat/polyglot.md +45 -0
  970. package/docs/pl/compat/react-i18next.md +58 -0
  971. package/docs/pl/compat/react-intl.md +55 -0
  972. package/docs/pl/compat/svelte-i18n.md +47 -0
  973. package/docs/pl/compat/transloco.md +45 -0
  974. package/docs/pl/compat/vue-i18n.md +58 -0
  975. package/docs/pl/configuration.md +15 -16
  976. package/docs/pl/dictionary/content_file.md +0 -40
  977. package/docs/pl/dictionary/enumeration.md +0 -187
  978. package/docs/pl/dictionary/nesting.md +39 -0
  979. package/docs/pl/dictionary/translation.md +0 -61
  980. package/docs/pl/formatters.md +120 -0
  981. package/docs/pl/intlayer_with_astro.md +179 -0
  982. package/docs/pl/intlayer_with_react_native+expo.md +8 -61
  983. package/docs/pl/intlayer_with_react_router_v7.md +0 -94
  984. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +0 -95
  985. package/docs/pl/intlayer_with_svelte_kit.md +0 -210
  986. package/docs/pl/intlayer_with_vite+preact.md +56 -56
  987. package/docs/pl/intlayer_with_vite+react.md +48 -48
  988. package/docs/pl/intlayer_with_vite+solid.md +32 -41
  989. package/docs/pl/intlayer_with_vite+svelte.md +28 -28
  990. package/docs/pl/intlayer_with_vite+vue.md +48 -70
  991. package/docs/pl/mcp_server.md +22 -0
  992. package/docs/pl/migration_from_i18next_to_intlayer.md +230 -0
  993. package/docs/pl/migration_from_next-i18next_to_intlayer.md +351 -0
  994. package/docs/pl/migration_from_next-intl_to_intlayer.md +360 -0
  995. package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +324 -0
  996. package/docs/pl/migration_from_react-i18next_to_intlayer.md +380 -0
  997. package/docs/pl/migration_from_vue-i18n_to_intlayer.md +232 -0
  998. package/docs/pl/packages/intlayer/getLocalizedUrl.md +19 -0
  999. package/docs/pl/packages/intlayer/getMultilingualUrls.md +111 -0
  1000. package/docs/pl/packages/react-intlayer/useDictionary.md +0 -104
  1001. package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -51
  1002. package/docs/pl/plugins/sync-json.md +0 -59
  1003. package/docs/pl/releases/v6.md +4 -0
  1004. package/docs/pl/releases/v7.md +128 -0
  1005. package/docs/pl/releases/v9.md +36 -0
  1006. package/docs/pl/roadmap.md +0 -16
  1007. package/docs/pt/CI_CD.md +4 -0
  1008. package/docs/pt/autoFill.md +117 -14
  1009. package/docs/pt/benchmark/index.md +5 -5
  1010. package/docs/pt/benchmark/solid.md +22 -0
  1011. package/docs/pt/benchmark/svelte.md +22 -0
  1012. package/docs/pt/benchmark/tanstack.md +22 -0
  1013. package/docs/pt/cli/ci.md +22 -0
  1014. package/docs/pt/cli/fill.md +8 -0
  1015. package/docs/pt/cli/login.md +0 -36
  1016. package/docs/pt/compat/i18n-js.md +44 -0
  1017. package/docs/pt/compat/i18next.md +59 -0
  1018. package/docs/pt/compat/index.md +51 -0
  1019. package/docs/pt/compat/lingui.md +44 -0
  1020. package/docs/pt/compat/next-i18next.md +57 -0
  1021. package/docs/pt/compat/next-intl.md +59 -0
  1022. package/docs/pt/compat/next-translate.md +45 -0
  1023. package/docs/pt/compat/ngx-translate.md +45 -0
  1024. package/docs/pt/compat/nuxtjs-i18n.md +46 -0
  1025. package/docs/pt/compat/polyglot.md +45 -0
  1026. package/docs/pt/compat/react-i18next.md +58 -0
  1027. package/docs/pt/compat/react-intl.md +55 -0
  1028. package/docs/pt/compat/svelte-i18n.md +47 -0
  1029. package/docs/pt/compat/transloco.md +45 -0
  1030. package/docs/pt/compat/vue-i18n.md +58 -0
  1031. package/docs/pt/compiler.md +2 -2
  1032. package/docs/pt/configuration.md +16 -17
  1033. package/docs/pt/custom_domains.md +1 -6
  1034. package/docs/pt/custom_url_rewrites.md +1 -1
  1035. package/docs/pt/dictionary/content_file.md +4 -7
  1036. package/docs/pt/dictionary/enumeration.md +3 -190
  1037. package/docs/pt/dictionary/file.md +8 -0
  1038. package/docs/pt/dictionary/nesting.md +39 -0
  1039. package/docs/pt/dictionary/translation.md +0 -61
  1040. package/docs/pt/formatters.md +86 -0
  1041. package/docs/pt/how_works_intlayer.md +4 -0
  1042. package/docs/pt/intlayer_CMS.md +21 -0
  1043. package/docs/pt/intlayer_with_analog.md +3 -3
  1044. package/docs/pt/intlayer_with_angular_19.md +7 -7
  1045. package/docs/pt/intlayer_with_angular_21.md +3 -3
  1046. package/docs/pt/intlayer_with_astro.md +182 -3
  1047. package/docs/pt/intlayer_with_astro_lit.md +3 -3
  1048. package/docs/pt/intlayer_with_astro_preact.md +3 -3
  1049. package/docs/pt/intlayer_with_astro_react.md +3 -3
  1050. package/docs/pt/intlayer_with_astro_solid.md +3 -3
  1051. package/docs/pt/intlayer_with_astro_svelte.md +3 -3
  1052. package/docs/pt/intlayer_with_astro_vanilla.md +3 -3
  1053. package/docs/pt/intlayer_with_astro_vue.md +3 -3
  1054. package/docs/pt/intlayer_with_create_react_app.md +0 -14
  1055. package/docs/pt/intlayer_with_express.md +0 -23
  1056. package/docs/pt/intlayer_with_lynx+react.md +14 -3
  1057. package/docs/pt/intlayer_with_nestjs.md +0 -18
  1058. package/docs/pt/intlayer_with_nextjs_14.md +26 -7
  1059. package/docs/pt/intlayer_with_nextjs_15.md +27 -7
  1060. package/docs/pt/intlayer_with_nextjs_16.md +6 -6
  1061. package/docs/pt/intlayer_with_nextjs_compiler.md +1 -1
  1062. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +6 -6
  1063. package/docs/pt/intlayer_with_nextjs_page_router.md +10 -6
  1064. package/docs/pt/intlayer_with_nuxt.md +3 -3
  1065. package/docs/pt/intlayer_with_react_native+expo.md +39 -3
  1066. package/docs/pt/intlayer_with_react_router_v7.md +8 -84
  1067. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +3 -98
  1068. package/docs/pt/intlayer_with_storybook.md +3 -3
  1069. package/docs/pt/intlayer_with_svelte_kit.md +3 -245
  1070. package/docs/pt/intlayer_with_tanstack+solid.md +3 -3
  1071. package/docs/pt/intlayer_with_tanstack.md +3 -3
  1072. package/docs/pt/intlayer_with_vanilla.md +3 -3
  1073. package/docs/pt/intlayer_with_vite+lit.md +3 -3
  1074. package/docs/pt/intlayer_with_vite+preact.md +3 -3
  1075. package/docs/pt/intlayer_with_vite+react.md +10 -10
  1076. package/docs/pt/intlayer_with_vite+react_compiler.md +5 -5
  1077. package/docs/pt/intlayer_with_vite+solid.md +3 -3
  1078. package/docs/pt/intlayer_with_vite+svelte.md +31 -31
  1079. package/docs/pt/intlayer_with_vite+vanilla.md +3 -3
  1080. package/docs/pt/intlayer_with_vite+vue.md +7 -3
  1081. package/docs/pt/mcp_server.md +22 -0
  1082. package/docs/pt/packages/hono-intlayer/t.md +1 -1
  1083. package/docs/pt/packages/intlayer/getLocalizedUrl.md +75 -0
  1084. package/docs/pt/packages/intlayer/getMultilingualUrls.md +112 -0
  1085. package/docs/pt/packages/next-intlayer/t.md +34 -0
  1086. package/docs/pt/packages/react-intlayer/useDictionary.md +0 -121
  1087. package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -51
  1088. package/docs/pt/plugins/sync-po.md +1 -1
  1089. package/docs/pt/readme.md +3 -3
  1090. package/docs/pt/releases/v6.md +28 -0
  1091. package/docs/pt/releases/v7.md +128 -0
  1092. package/docs/pt/releases/v9.md +37 -1
  1093. package/docs/pt/roadmap.md +6 -0
  1094. package/docs/ru/CI_CD.md +4 -0
  1095. package/docs/ru/autoFill.md +81 -0
  1096. package/docs/ru/benchmark/solid.md +22 -0
  1097. package/docs/ru/benchmark/svelte.md +22 -0
  1098. package/docs/ru/benchmark/tanstack.md +22 -0
  1099. package/docs/ru/cli/ci.md +22 -0
  1100. package/docs/ru/cli/fill.md +8 -0
  1101. package/docs/ru/cli/login.md +0 -36
  1102. package/docs/ru/compat/i18n-js.md +44 -0
  1103. package/docs/ru/compat/i18next.md +59 -0
  1104. package/docs/ru/compat/index.md +51 -0
  1105. package/docs/ru/compat/lingui.md +44 -0
  1106. package/docs/ru/compat/next-i18next.md +57 -0
  1107. package/docs/ru/compat/next-intl.md +59 -0
  1108. package/docs/ru/compat/next-translate.md +45 -0
  1109. package/docs/ru/compat/ngx-translate.md +45 -0
  1110. package/docs/ru/compat/nuxtjs-i18n.md +46 -0
  1111. package/docs/ru/compat/polyglot.md +45 -0
  1112. package/docs/ru/compat/react-i18next.md +58 -0
  1113. package/docs/ru/compat/react-intl.md +55 -0
  1114. package/docs/ru/compat/svelte-i18n.md +47 -0
  1115. package/docs/ru/compat/transloco.md +45 -0
  1116. package/docs/ru/compat/vue-i18n.md +58 -0
  1117. package/docs/ru/compiler.md +3 -1
  1118. package/docs/ru/configuration.md +19 -17
  1119. package/docs/ru/custom_domains.md +1 -1
  1120. package/docs/ru/custom_url_rewrites.md +1 -1
  1121. package/docs/ru/dictionary/content_file.md +4 -27
  1122. package/docs/ru/dictionary/enumeration.md +0 -199
  1123. package/docs/ru/dictionary/file.md +8 -0
  1124. package/docs/ru/dictionary/markdown.md +510 -0
  1125. package/docs/ru/dictionary/nesting.md +8 -0
  1126. package/docs/ru/dictionary/translation.md +0 -61
  1127. package/docs/ru/formatters.md +136 -0
  1128. package/docs/ru/how_works_intlayer.md +4 -0
  1129. package/docs/ru/intlayer_CMS.md +6 -0
  1130. package/docs/ru/intlayer_with_astro.md +129 -2
  1131. package/docs/ru/intlayer_with_astro_lit.md +1 -1
  1132. package/docs/ru/intlayer_with_astro_preact.md +1 -1
  1133. package/docs/ru/intlayer_with_astro_react.md +1 -1
  1134. package/docs/ru/intlayer_with_astro_solid.md +1 -1
  1135. package/docs/ru/intlayer_with_astro_svelte.md +1 -1
  1136. package/docs/ru/intlayer_with_astro_vanilla.md +1 -1
  1137. package/docs/ru/intlayer_with_astro_vue.md +1 -1
  1138. package/docs/ru/intlayer_with_express.md +0 -23
  1139. package/docs/ru/intlayer_with_nestjs.md +0 -18
  1140. package/docs/ru/intlayer_with_nextjs_14.md +31 -8
  1141. package/docs/ru/intlayer_with_nextjs_15.md +21 -1
  1142. package/docs/ru/intlayer_with_nextjs_16.md +1 -1
  1143. package/docs/ru/intlayer_with_nextjs_compiler.md +1 -1
  1144. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1 -1
  1145. package/docs/ru/intlayer_with_nextjs_page_router.md +5 -1
  1146. package/docs/ru/intlayer_with_react_native+expo.md +36 -49
  1147. package/docs/ru/intlayer_with_react_router_v7.md +1 -95
  1148. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +1 -96
  1149. package/docs/ru/intlayer_with_svelte_kit.md +1 -207
  1150. package/docs/ru/intlayer_with_tanstack+solid.md +3 -1
  1151. package/docs/ru/intlayer_with_tanstack.md +1 -1
  1152. package/docs/ru/intlayer_with_vite+lit.md +1 -1
  1153. package/docs/ru/intlayer_with_vite+preact.md +57 -57
  1154. package/docs/ru/intlayer_with_vite+react.md +3 -1
  1155. package/docs/ru/intlayer_with_vite+react_compiler.md +1 -1
  1156. package/docs/ru/intlayer_with_vite+solid.md +33 -42
  1157. package/docs/ru/intlayer_with_vite+svelte.md +27 -29
  1158. package/docs/ru/intlayer_with_vite+vanilla.md +1 -1
  1159. package/docs/ru/intlayer_with_vite+vue.md +53 -101
  1160. package/docs/ru/mcp_server.md +22 -0
  1161. package/docs/ru/packages/intlayer/getLocalizedUrl.md +75 -0
  1162. package/docs/ru/packages/intlayer/getMultilingualUrls.md +111 -0
  1163. package/docs/ru/packages/next-intlayer/t.md +34 -0
  1164. package/docs/ru/packages/react-intlayer/useDictionary.md +0 -104
  1165. package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -51
  1166. package/docs/ru/packages/react-intlayer/useLocale.md +9 -0
  1167. package/docs/ru/releases/v6.md +28 -0
  1168. package/docs/ru/releases/v7.md +128 -0
  1169. package/docs/ru/releases/v9.md +37 -1
  1170. package/docs/ru/roadmap.md +6 -0
  1171. package/docs/tr/CI_CD.md +4 -0
  1172. package/docs/tr/autoFill.md +81 -0
  1173. package/docs/tr/benchmark/solid.md +22 -0
  1174. package/docs/tr/benchmark/svelte.md +22 -0
  1175. package/docs/tr/benchmark/tanstack.md +22 -0
  1176. package/docs/tr/cli/ci.md +22 -0
  1177. package/docs/tr/cli/fill.md +8 -0
  1178. package/docs/tr/cli/login.md +0 -10
  1179. package/docs/tr/compat/i18n-js.md +44 -0
  1180. package/docs/tr/compat/i18next.md +59 -0
  1181. package/docs/tr/compat/index.md +51 -0
  1182. package/docs/tr/compat/lingui.md +44 -0
  1183. package/docs/tr/compat/next-i18next.md +57 -0
  1184. package/docs/tr/compat/next-intl.md +59 -0
  1185. package/docs/tr/compat/next-translate.md +45 -0
  1186. package/docs/tr/compat/ngx-translate.md +45 -0
  1187. package/docs/tr/compat/nuxtjs-i18n.md +46 -0
  1188. package/docs/tr/compat/polyglot.md +45 -0
  1189. package/docs/tr/compat/react-i18next.md +58 -0
  1190. package/docs/tr/compat/react-intl.md +55 -0
  1191. package/docs/tr/compat/svelte-i18n.md +47 -0
  1192. package/docs/tr/compat/transloco.md +45 -0
  1193. package/docs/tr/compat/vue-i18n.md +58 -0
  1194. package/docs/tr/compiler.md +3 -1
  1195. package/docs/tr/configuration.md +19 -17
  1196. package/docs/tr/custom_domains.md +1 -1
  1197. package/docs/tr/custom_url_rewrites.md +1 -1
  1198. package/docs/tr/dictionary/content_file.md +4 -27
  1199. package/docs/tr/dictionary/enumeration.md +0 -187
  1200. package/docs/tr/dictionary/file.md +8 -0
  1201. package/docs/tr/dictionary/nesting.md +39 -0
  1202. package/docs/tr/dictionary/translation.md +0 -88
  1203. package/docs/tr/formatters.md +59 -0
  1204. package/docs/tr/how_works_intlayer.md +4 -0
  1205. package/docs/tr/intlayer_CMS.md +6 -0
  1206. package/docs/tr/intlayer_with_analog.md +4 -0
  1207. package/docs/tr/intlayer_with_astro.md +134 -77
  1208. package/docs/tr/intlayer_with_astro_lit.md +1 -1
  1209. package/docs/tr/intlayer_with_astro_preact.md +1 -1
  1210. package/docs/tr/intlayer_with_astro_react.md +1 -1
  1211. package/docs/tr/intlayer_with_astro_solid.md +1 -1
  1212. package/docs/tr/intlayer_with_astro_svelte.md +1 -1
  1213. package/docs/tr/intlayer_with_astro_vanilla.md +1 -1
  1214. package/docs/tr/intlayer_with_astro_vue.md +1 -1
  1215. package/docs/tr/intlayer_with_express.md +0 -4
  1216. package/docs/tr/intlayer_with_nestjs.md +0 -8
  1217. package/docs/tr/intlayer_with_nextjs_14.md +95 -8
  1218. package/docs/tr/intlayer_with_nextjs_15.md +21 -1
  1219. package/docs/tr/intlayer_with_nextjs_16.md +1 -1
  1220. package/docs/tr/intlayer_with_nextjs_compiler.md +1 -22
  1221. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1 -1
  1222. package/docs/tr/intlayer_with_nextjs_page_router.md +5 -1
  1223. package/docs/tr/intlayer_with_react_native+expo.md +36 -46
  1224. package/docs/tr/intlayer_with_react_router_v7.md +1 -95
  1225. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +1 -96
  1226. package/docs/tr/intlayer_with_svelte_kit.md +1 -207
  1227. package/docs/tr/intlayer_with_tanstack+solid.md +3 -1
  1228. package/docs/tr/intlayer_with_tanstack.md +1 -1
  1229. package/docs/tr/intlayer_with_vite+lit.md +1 -1
  1230. package/docs/tr/intlayer_with_vite+preact.md +57 -57
  1231. package/docs/tr/intlayer_with_vite+react.md +49 -49
  1232. package/docs/tr/intlayer_with_vite+react_compiler.md +1 -1
  1233. package/docs/tr/intlayer_with_vite+solid.md +33 -42
  1234. package/docs/tr/intlayer_with_vite+svelte.md +27 -29
  1235. package/docs/tr/intlayer_with_vite+vanilla.md +1 -1
  1236. package/docs/tr/intlayer_with_vite+vue.md +54 -102
  1237. package/docs/tr/mcp_server.md +22 -0
  1238. package/docs/tr/packages/intlayer/getMultilingualUrls.md +111 -0
  1239. package/docs/tr/packages/react-intlayer/useDictionary.md +0 -119
  1240. package/docs/tr/packages/react-intlayer/useI18n.md +0 -125
  1241. package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -51
  1242. package/docs/tr/releases/v6.md +28 -0
  1243. package/docs/tr/releases/v7.md +128 -0
  1244. package/docs/tr/releases/v9.md +37 -1
  1245. package/docs/tr/roadmap.md +6 -0
  1246. package/docs/uk/benchmark/solid.md +22 -0
  1247. package/docs/uk/benchmark/svelte.md +22 -0
  1248. package/docs/uk/benchmark/tanstack.md +22 -0
  1249. package/docs/uk/cli/ci.md +22 -0
  1250. package/docs/uk/cli/fill.md +8 -0
  1251. package/docs/uk/compat/i18n-js.md +44 -0
  1252. package/docs/uk/compat/i18next.md +59 -0
  1253. package/docs/uk/compat/index.md +51 -0
  1254. package/docs/uk/compat/lingui.md +44 -0
  1255. package/docs/uk/compat/next-i18next.md +57 -0
  1256. package/docs/uk/compat/next-intl.md +59 -0
  1257. package/docs/uk/compat/next-translate.md +45 -0
  1258. package/docs/uk/compat/ngx-translate.md +45 -0
  1259. package/docs/uk/compat/nuxtjs-i18n.md +46 -0
  1260. package/docs/uk/compat/polyglot.md +45 -0
  1261. package/docs/uk/compat/react-i18next.md +58 -0
  1262. package/docs/uk/compat/react-intl.md +55 -0
  1263. package/docs/uk/compat/svelte-i18n.md +47 -0
  1264. package/docs/uk/compat/transloco.md +45 -0
  1265. package/docs/uk/compat/vue-i18n.md +58 -0
  1266. package/docs/uk/compiler.md +3 -1
  1267. package/docs/uk/configuration.md +19 -17
  1268. package/docs/uk/custom_domains.md +1 -1
  1269. package/docs/uk/custom_url_rewrites.md +1 -1
  1270. package/docs/uk/dictionary/content_file.md +0 -7
  1271. package/docs/uk/dictionary/enumeration.md +0 -187
  1272. package/docs/uk/dictionary/nesting.md +39 -0
  1273. package/docs/uk/dictionary/translation.md +0 -72
  1274. package/docs/uk/formatters.md +142 -58
  1275. package/docs/uk/interest_of_intlayer.md +194 -0
  1276. package/docs/uk/intlayer_with_analog.md +4 -0
  1277. package/docs/uk/intlayer_with_astro.md +130 -3
  1278. package/docs/uk/intlayer_with_astro_lit.md +1 -1
  1279. package/docs/uk/intlayer_with_astro_preact.md +1 -1
  1280. package/docs/uk/intlayer_with_astro_react.md +1 -1
  1281. package/docs/uk/intlayer_with_astro_solid.md +1 -1
  1282. package/docs/uk/intlayer_with_astro_svelte.md +1 -1
  1283. package/docs/uk/intlayer_with_astro_vanilla.md +1 -1
  1284. package/docs/uk/intlayer_with_astro_vue.md +1 -1
  1285. package/docs/uk/intlayer_with_nextjs_14.md +1 -1
  1286. package/docs/uk/intlayer_with_nextjs_15.md +1 -1
  1287. package/docs/uk/intlayer_with_nextjs_16.md +1 -1
  1288. package/docs/uk/intlayer_with_nextjs_compiler.md +1 -22
  1289. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1 -1
  1290. package/docs/uk/intlayer_with_nextjs_page_router.md +1 -1
  1291. package/docs/uk/intlayer_with_nuxt.md +0 -27
  1292. package/docs/uk/intlayer_with_react_native+expo.md +8 -61
  1293. package/docs/uk/intlayer_with_react_router_v7.md +1 -95
  1294. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +1 -96
  1295. package/docs/uk/intlayer_with_svelte_kit.md +1 -1
  1296. package/docs/uk/intlayer_with_tanstack+solid.md +3 -1
  1297. package/docs/uk/intlayer_with_tanstack.md +1 -1
  1298. package/docs/uk/intlayer_with_vite+lit.md +1 -1
  1299. package/docs/uk/intlayer_with_vite+preact.md +57 -57
  1300. package/docs/uk/intlayer_with_vite+react.md +49 -49
  1301. package/docs/uk/intlayer_with_vite+react_compiler.md +1 -1
  1302. package/docs/uk/intlayer_with_vite+solid.md +33 -42
  1303. package/docs/uk/intlayer_with_vite+svelte.md +29 -29
  1304. package/docs/uk/intlayer_with_vite+vanilla.md +1 -1
  1305. package/docs/uk/intlayer_with_vite+vue.md +49 -101
  1306. package/docs/uk/mcp_server.md +22 -0
  1307. package/docs/uk/migration_from_i18next_to_intlayer.md +333 -0
  1308. package/docs/uk/migration_from_next-i18next_to_intlayer.md +355 -0
  1309. package/docs/uk/migration_from_next-intl_to_intlayer.md +364 -0
  1310. package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  1311. package/docs/uk/migration_from_react-i18next_to_intlayer.md +384 -0
  1312. package/docs/uk/migration_from_vue-i18n_to_intlayer.md +359 -0
  1313. package/docs/uk/packages/react-intlayer/useDictionary.md +0 -107
  1314. package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -51
  1315. package/docs/uk/releases/v6.md +4 -0
  1316. package/docs/uk/releases/v7.md +4 -0
  1317. package/docs/uk/releases/v9.md +37 -1
  1318. package/docs/vi/autoFill.md +20 -0
  1319. package/docs/vi/benchmark/solid.md +22 -0
  1320. package/docs/vi/benchmark/svelte.md +22 -0
  1321. package/docs/vi/benchmark/tanstack.md +22 -0
  1322. package/docs/vi/cli/ci.md +22 -0
  1323. package/docs/vi/cli/fill.md +8 -0
  1324. package/docs/vi/cli/login.md +0 -36
  1325. package/docs/vi/compat/i18n-js.md +44 -0
  1326. package/docs/vi/compat/i18next.md +59 -0
  1327. package/docs/vi/compat/index.md +51 -0
  1328. package/docs/vi/compat/lingui.md +44 -0
  1329. package/docs/vi/compat/next-i18next.md +57 -0
  1330. package/docs/vi/compat/next-intl.md +59 -0
  1331. package/docs/vi/compat/next-translate.md +45 -0
  1332. package/docs/vi/compat/ngx-translate.md +45 -0
  1333. package/docs/vi/compat/nuxtjs-i18n.md +46 -0
  1334. package/docs/vi/compat/polyglot.md +45 -0
  1335. package/docs/vi/compat/react-i18next.md +58 -0
  1336. package/docs/vi/compat/react-intl.md +55 -0
  1337. package/docs/vi/compat/svelte-i18n.md +47 -0
  1338. package/docs/vi/compat/transloco.md +45 -0
  1339. package/docs/vi/compat/vue-i18n.md +58 -0
  1340. package/docs/vi/compiler.md +3 -1
  1341. package/docs/vi/configuration.md +19 -17
  1342. package/docs/vi/custom_domains.md +1 -1
  1343. package/docs/vi/custom_url_rewrites.md +1 -1
  1344. package/docs/vi/dictionary/content_file.md +0 -7
  1345. package/docs/vi/dictionary/enumeration.md +0 -199
  1346. package/docs/vi/dictionary/insertion.md +0 -2
  1347. package/docs/vi/dictionary/nesting.md +39 -0
  1348. package/docs/vi/dictionary/translation.md +0 -61
  1349. package/docs/vi/formatters.md +124 -0
  1350. package/docs/vi/interest_of_intlayer.md +193 -0
  1351. package/docs/vi/intlayer_with_analog.md +4 -0
  1352. package/docs/vi/intlayer_with_astro.md +130 -3
  1353. package/docs/vi/intlayer_with_astro_lit.md +1 -1
  1354. package/docs/vi/intlayer_with_astro_preact.md +1 -1
  1355. package/docs/vi/intlayer_with_astro_react.md +1 -1
  1356. package/docs/vi/intlayer_with_astro_solid.md +1 -1
  1357. package/docs/vi/intlayer_with_astro_svelte.md +1 -1
  1358. package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
  1359. package/docs/vi/intlayer_with_astro_vue.md +1 -1
  1360. package/docs/vi/intlayer_with_nextjs_14.md +1 -1
  1361. package/docs/vi/intlayer_with_nextjs_15.md +469 -1
  1362. package/docs/vi/intlayer_with_nextjs_16.md +1 -1
  1363. package/docs/vi/intlayer_with_nextjs_compiler.md +1 -22
  1364. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1 -1
  1365. package/docs/vi/intlayer_with_nextjs_page_router.md +1 -1
  1366. package/docs/vi/intlayer_with_nuxt.md +0 -27
  1367. package/docs/vi/intlayer_with_react_native+expo.md +8 -61
  1368. package/docs/vi/intlayer_with_react_router_v7.md +1 -95
  1369. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +1 -103
  1370. package/docs/vi/intlayer_with_svelte_kit.md +1 -207
  1371. package/docs/vi/intlayer_with_tanstack+solid.md +3 -1
  1372. package/docs/vi/intlayer_with_tanstack.md +1 -1
  1373. package/docs/vi/intlayer_with_vite+lit.md +1 -1
  1374. package/docs/vi/intlayer_with_vite+preact.md +57 -57
  1375. package/docs/vi/intlayer_with_vite+react.md +49 -49
  1376. package/docs/vi/intlayer_with_vite+react_compiler.md +1 -1
  1377. package/docs/vi/intlayer_with_vite+solid.md +33 -42
  1378. package/docs/vi/intlayer_with_vite+svelte.md +29 -31
  1379. package/docs/vi/intlayer_with_vite+vanilla.md +1 -1
  1380. package/docs/vi/intlayer_with_vite+vue.md +49 -101
  1381. package/docs/vi/mcp_server.md +22 -0
  1382. package/docs/vi/migration_from_i18next_to_intlayer.md +333 -0
  1383. package/docs/vi/migration_from_next-i18next_to_intlayer.md +355 -0
  1384. package/docs/vi/migration_from_next-intl_to_intlayer.md +364 -0
  1385. package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  1386. package/docs/vi/migration_from_react-i18next_to_intlayer.md +384 -0
  1387. package/docs/vi/migration_from_vue-i18n_to_intlayer.md +359 -0
  1388. package/docs/vi/packages/intlayer/getLocalizedUrl.md +25 -0
  1389. package/docs/vi/packages/intlayer/getMultilingualUrls.md +112 -0
  1390. package/docs/vi/packages/react-intlayer/useDictionary.md +0 -121
  1391. package/docs/vi/packages/react-intlayer/useI18n.md +0 -28
  1392. package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -51
  1393. package/docs/vi/releases/v6.md +4 -0
  1394. package/docs/vi/releases/v7.md +128 -0
  1395. package/docs/vi/releases/v9.md +37 -1
  1396. package/docs/zh/CI_CD.md +1 -1
  1397. package/docs/zh/autoFill.md +81 -0
  1398. package/docs/zh/benchmark/solid.md +22 -0
  1399. package/docs/zh/benchmark/svelte.md +22 -0
  1400. package/docs/zh/benchmark/tanstack.md +22 -0
  1401. package/docs/zh/cli/ci.md +22 -0
  1402. package/docs/zh/cli/fill.md +8 -0
  1403. package/docs/zh/cli/login.md +0 -36
  1404. package/docs/zh/compat/i18n-js.md +44 -0
  1405. package/docs/zh/compat/i18next.md +59 -0
  1406. package/docs/zh/compat/index.md +51 -0
  1407. package/docs/zh/compat/lingui.md +44 -0
  1408. package/docs/zh/compat/next-i18next.md +57 -0
  1409. package/docs/zh/compat/next-intl.md +59 -0
  1410. package/docs/zh/compat/next-translate.md +45 -0
  1411. package/docs/zh/compat/ngx-translate.md +45 -0
  1412. package/docs/zh/compat/nuxtjs-i18n.md +46 -0
  1413. package/docs/zh/compat/polyglot.md +45 -0
  1414. package/docs/zh/compat/react-i18next.md +58 -0
  1415. package/docs/zh/compat/react-intl.md +55 -0
  1416. package/docs/zh/compat/svelte-i18n.md +47 -0
  1417. package/docs/zh/compat/transloco.md +45 -0
  1418. package/docs/zh/compat/vue-i18n.md +58 -0
  1419. package/docs/zh/compiler.md +3 -1
  1420. package/docs/zh/configuration.md +19 -17
  1421. package/docs/zh/custom_domains.md +1 -1
  1422. package/docs/zh/custom_url_rewrites.md +14 -16
  1423. package/docs/zh/dictionary/content_file.md +16 -20
  1424. package/docs/zh/dictionary/enumeration.md +0 -187
  1425. package/docs/zh/dictionary/function_fetching.md +0 -27
  1426. package/docs/zh/dictionary/insertion.md +0 -64
  1427. package/docs/zh/dictionary/nesting.md +39 -0
  1428. package/docs/zh/dictionary/translation.md +0 -84
  1429. package/docs/zh/formatters.md +77 -0
  1430. package/docs/zh/how_works_intlayer.md +4 -4
  1431. package/docs/zh/intlayer_CMS.md +21 -0
  1432. package/docs/zh/intlayer_with_analog.md +4 -170
  1433. package/docs/zh/intlayer_with_angular_19.md +0 -248
  1434. package/docs/zh/intlayer_with_astro.md +242 -60
  1435. package/docs/zh/intlayer_with_astro_lit.md +108 -74
  1436. package/docs/zh/intlayer_with_astro_preact.md +102 -68
  1437. package/docs/zh/intlayer_with_astro_react.md +104 -70
  1438. package/docs/zh/intlayer_with_astro_solid.md +104 -70
  1439. package/docs/zh/intlayer_with_astro_svelte.md +104 -70
  1440. package/docs/zh/intlayer_with_astro_vanilla.md +101 -69
  1441. package/docs/zh/intlayer_with_astro_vue.md +96 -62
  1442. package/docs/zh/intlayer_with_create_react_app.md +0 -305
  1443. package/docs/zh/intlayer_with_express.md +0 -23
  1444. package/docs/zh/intlayer_with_lynx+react.md +0 -275
  1445. package/docs/zh/intlayer_with_nestjs.md +0 -18
  1446. package/docs/zh/intlayer_with_nextjs_14.md +63 -25
  1447. package/docs/zh/intlayer_with_nextjs_15.md +64 -14
  1448. package/docs/zh/intlayer_with_nextjs_16.md +129 -87
  1449. package/docs/zh/intlayer_with_nextjs_compiler.md +152 -140
  1450. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1 -1
  1451. package/docs/zh/intlayer_with_nextjs_page_router.md +51 -15
  1452. package/docs/zh/intlayer_with_nuxt.md +0 -162
  1453. package/docs/zh/intlayer_with_react_native+expo.md +36 -187
  1454. package/docs/zh/intlayer_with_react_router_v7.md +1 -342
  1455. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +1 -332
  1456. package/docs/zh/intlayer_with_storybook.md +0 -240
  1457. package/docs/zh/intlayer_with_svelte_kit.md +1 -549
  1458. package/docs/zh/intlayer_with_tanstack+solid.md +1 -646
  1459. package/docs/zh/intlayer_with_tanstack.md +1 -644
  1460. package/docs/zh/intlayer_with_vanilla.md +0 -283
  1461. package/docs/zh/intlayer_with_vite+lit.md +1 -411
  1462. package/docs/zh/intlayer_with_vite+preact.md +1 -241
  1463. package/docs/zh/intlayer_with_vite+react.md +2 -2
  1464. package/docs/zh/intlayer_with_vite+react_compiler.md +1 -192
  1465. package/docs/zh/intlayer_with_vite+solid.md +1 -306
  1466. package/docs/zh/intlayer_with_vite+svelte.md +104 -78
  1467. package/docs/zh/intlayer_with_vite+vanilla.md +1 -442
  1468. package/docs/zh/intlayer_with_vite+vue.md +95 -136
  1469. package/docs/zh/mcp_server.md +26 -0
  1470. package/docs/zh/migration_from_i18next_to_intlayer.md +330 -0
  1471. package/docs/zh/migration_from_next-i18next_to_intlayer.md +355 -0
  1472. package/docs/zh/migration_from_next-intl_to_intlayer.md +365 -0
  1473. package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
  1474. package/docs/zh/migration_from_react-i18next_to_intlayer.md +384 -0
  1475. package/docs/zh/migration_from_vue-i18n_to_intlayer.md +359 -0
  1476. package/docs/zh/packages/intlayer/getLocalizedUrl.md +73 -0
  1477. package/docs/zh/packages/intlayer/getMultilingualUrls.md +112 -0
  1478. package/docs/zh/packages/react-intlayer/useDictionary.md +0 -129
  1479. package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -51
  1480. package/docs/zh/releases/v6.md +28 -0
  1481. package/docs/zh/releases/v7.md +128 -0
  1482. package/docs/zh/releases/v8.md +190 -0
  1483. package/docs/zh/releases/v9.md +37 -1
  1484. package/docs/zh/roadmap.md +6 -0
  1485. package/docs/zh/vs_code_extension.md +0 -7
  1486. package/frequent_questions/pt/translated_path_url.md +1 -1
  1487. package/package.json +6 -6
@@ -0,0 +1,1348 @@
1
+ ---
2
+ createdAt: 2025-02-07
3
+ updatedAt: 2026-05-19
4
+ title: Markdown
5
+ description: Intlayerを使用して多言語Webサイトでマークダウンコンテンツを宣言および使用する方法を学びます。このオンラインドキュメントの手順に従って、マークダウンをプロジェクトにシームレスに統合します。
6
+ keywords:
7
+ - Markdown
8
+ - Internationalization
9
+ - Documentation
10
+ - Intlayer
11
+ - Next.js
12
+ - JavaScript
13
+ - React
14
+ slugs:
15
+ - doc
16
+ - concept
17
+ - content
18
+ - markdown
19
+ history:
20
+ - version: 8.11.0
21
+ date: 2026-05-28
22
+ changes: "マークダウンコンテンツの自動装飾、MDXおよびSSRサポート"
23
+ - version: 8.10.0
24
+ date: 2026-05-19
25
+ changes: "`.content.md`ファイルサポートを追加"
26
+ - version: 8.5.0
27
+ date: 2026-03-24
28
+ changes: "`intlayerMarkdown`プラグインオブジェクトを追加。`app.use(installIntlayerMarkdown)`の代わりに`app.use(intlayerMarkdown)`を使用"
29
+ - version: 8.5.0
30
+ date: 2026-03-24
31
+ changes: "インポートを`{{framework}}-intlayer`から`{{framework}}-intlayer/markdown`に移動"
32
+ - version: 8.0.0
33
+ date: 2026-01-22
34
+ changes: "MarkdownRenderer / useMarkdownRenderer / renderMarkdownユーティリティとforceInlineオプションを追加"
35
+ - version: 8.0.0
36
+ date: 2026-01-18
37
+ changes: "マークダウンコンテンツの自動装飾、MDXおよびSSRサポート"
38
+ - version: 5.5.10
39
+ date: 2025-06-29
40
+ changes: "履歴を初期化"
41
+ author: aymericzip
42
+ ---
43
+
44
+ # Markdown / Rich Text Content
45
+
46
+ Intlayerは、Markdown構文を使用して定義されたリッチテキストコンテンツをサポートしています。これにより、ブログ、記事など、リッチなフォーマットを持つコンテンツを簡単に記述および維持できます。
47
+
48
+ ## Markdownコンテンツの宣言
49
+
50
+ `md`関数を使用するか、単純に文字列として(Markdownシンタックスを含む場合)Markdownコンテンツを宣言できます。
51
+
52
+ <Tabs>
53
+ <Tab label=".content.md" value=".content.md">
54
+
55
+ バージョン`8.10.0`以降、`.content.md`ファイルでMarkdownコンテンツを直接宣言できます。Intlayerは
56
+ Markdownコンテンツを自動的に検出して解析します。
57
+
58
+ ```md fileName="markdown-file.en.content.md"
59
+ ---
60
+ key: my-markdown-content
61
+ description: My content
62
+ locale: en
63
+ ---
64
+
65
+ # My content
66
+
67
+ Here an example of markdown content
68
+ ```
69
+
70
+ `locale`フロントマターフィールドはコンテンツのロケールを定義するフィールドです。これはオプションです。提供されない場合、Intlayerはデフォルトロケールを使用します。これは特定のロケールに対して翻訳が利用できない場合のフォールバックロケールとしても使用されます。
71
+
72
+ ファイル構造の例:
73
+
74
+ ```text
75
+ content
76
+ ├── markdown-file.en.content.md
77
+ ├── markdown-file.fr.content.md
78
+ └── markdown-file.es.content.md
79
+ ```
80
+
81
+ [Dictionary definition](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ja/dictionary/content_file.md)で定義されているプロパティをフロントマターに追加できます
82
+
83
+ </Tab>
84
+ <Tab label="手動ラッピング" value="manual-wrapping">
85
+ `md`関数を使用してMarkdownコンテンツを明示的に宣言します。これは、明らかなシンタックスが含まれていなくても、文字列がMarkdownとして処理されることを確認したい場合に便利です。
86
+
87
+ ```typescript fileName="markdownDictionary.content.ts"
88
+ import { md, type Dictionary } from "intlayer";
89
+
90
+ const markdownDictionary = {
91
+ key: "app",
92
+ content: {
93
+ myMarkdownContent: md("## My title \n\nLorem Ipsum"),
94
+ },
95
+ } satisfies Dictionary;
96
+
97
+ export default markdownDictionary;
98
+ ```
99
+
100
+ </Tab>
101
+
102
+ <Tab label="外部ファイル" value="external-files">
103
+ `file`関数を使用して`.md`ファイルを直接importします。
104
+
105
+ ```typescript fileName="markdownDictionary.content.ts"
106
+ import { md, file, t } from "intlayer";
107
+
108
+ export default {
109
+ key: "app",
110
+ content: {
111
+ content: t({
112
+ ja: md(file("./myMarkdown.ja.md")),
113
+ en: md(file("./myMarkdown.en.md")),
114
+ fr: md(file("./myMarkdown.fr.md")),
115
+ }),
116
+ },
117
+ };
118
+ ```
119
+
120
+ </Tab>
121
+
122
+ <Tab label="自動検出" value="automatic-detection">
123
+ 文字列に一般的なMarkdown指標(ヘッダー、リスト、リンクなど)が含まれている場合、Intlayerは自動的にそれを変換します。
124
+
125
+ ```typescript fileName="markdownDictionary.content.ts"
126
+ export default {
127
+ key: "app",
128
+ contentAutoTransformation: true, // Markdownコンテンツの自動検出を有効化 - intlayer.config.tsでグローバルに設定できます
129
+ content: {
130
+ myMarkdownContent: "## My title \n\nLorem Ipsum",
131
+ },
132
+ };
133
+ ```
134
+
135
+ </Tab>
136
+
137
+ </Tabs>
138
+
139
+ ## Markdown のレンダリング
140
+
141
+ Intlayer は Markdown をレンダリングするための 2 つの独立した方法を提供します:
142
+
143
+ 1. **`useIntlayer` 経由**
144
+ — Intlayer は自動的に `md` ノードをフレームワークのネイティブ出力 (JSX、VNode、HTML 文字列) に変換します。
145
+ - Frontmatter は解析され、`.metadata` として公開されます。レンダリングはグローバルに `MarkdownProvider` (またはフレームワークと同等のもの) で、ノードごとにローカルで `.use()` で、2 つのレベルでオーバーライドできます。両者は組み合わせることができます。`.use()` は `MarkdownProvider` に優先し、`MarkdownProvider` はデフォルトに優先します。
146
+
147
+ 2. **ヘルパーユーティリティ** — `<MarkdownRenderer />`、`useMarkdownRenderer()`、および `renderMarkdown()` は、**生の Markdown 文字列のみ** を受け入れるスタンドアロンツールです。これらは `useIntlayer` から独立しており、それが返す装飾されたノードでは機能しません。
148
+
149
+ Markdown レンダリングは **MDX** をサポートしています — Markdown 内で JSX/フレームワークコンポーネントを名前で直接使用できます。
150
+
151
+ ### 1. 自動レンダリング(`useIntlayer`経由)
152
+
153
+ <Tabs group="framework">
154
+ <Tab label="React" value="react">
155
+ Markdownノードは直接JSXとしてレンダリングできます。
156
+
157
+ ```tsx fileName="App.tsx"
158
+ import { useIntlayer } from "react-intlayer";
159
+ import { MarkdownProvider } from "react-intlayer/markdown";
160
+
161
+ const AppContent = () => {
162
+ const { myMarkdownContent } = useIntlayer("app");
163
+
164
+ return <div>{myMarkdownContent}</div>;
165
+ };
166
+
167
+ const App = () => (
168
+ <MarkdownProvider
169
+ components={{
170
+ h1: ({ children }) => <h1 style={{ color: "red" }}>{children}</h1>,
171
+ MyButton: (props) => <button {...props} />, // MDXコンポーネント
172
+ }}
173
+ >
174
+ <AppContent />
175
+ </MarkdownProvider>
176
+ );
177
+ ```
178
+
179
+ > `MarkdownProvider`が存在しない場合、intlayerはデフォルトのMarkdown to JSXパーサーを使用してMarkdownをレンダリングします。
180
+
181
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
182
+
183
+ ```tsx
184
+ {myMarkdownContent.use({
185
+ h1: ({ children }) => <h1 style={{ color: "red" }}>{children}</h1>,
186
+ })}
187
+ ```
188
+
189
+ Markdownを文字列として取得できます:
190
+
191
+ ```tsx
192
+ {myMarkdownContent.value}
193
+ {String(myMarkdownContent)}
194
+ {myMarkdownContent.toString()}
195
+ ```
196
+
197
+ また、Markdownのメタデータにアクセスできます:
198
+
199
+ ```tsx
200
+ {myMarkdownContent.metadata}
201
+ {myMarkdownContent.metadata.title}
202
+ ```
203
+
204
+ </Tab>
205
+ <Tab label="Next.js" value="nextjs">
206
+ Markdownノードは直接JSXとしてレンダリングできます。
207
+
208
+ ```tsx fileName="App.tsx"
209
+ import { useIntlayer } from "next-intlayer";
210
+ import { MarkdownProvider } from "next-intlayer/markdown";
211
+
212
+ const AppContent = () => {
213
+ const { myMarkdownContent } = useIntlayer("app");
214
+
215
+ return <div>{myMarkdownContent}</div>;
216
+ };
217
+
218
+ const App = () => (
219
+ <MarkdownProvider
220
+ components={{
221
+ h1: ({ children }) => <h1 style={{ color: "red" }}>{children}</h1>,
222
+ MyButton: (props) => <button {...props} />, // MDXコンポーネント
223
+ }}
224
+ >
225
+ <AppContent />
226
+ </MarkdownProvider>
227
+ );
228
+ ```
229
+
230
+ > `MarkdownProvider`が存在しない場合、intlayerはデフォルトのMarkdown to JSXパーサーを使用してMarkdownをレンダリングします。
231
+
232
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
233
+
234
+ ```tsx
235
+ {myMarkdownContent.use({
236
+ h1: ({ children }) => <h1 style={{ color: "red" }}>{children}</h1>,
237
+ })}
238
+ ```
239
+
240
+ Markdownを文字列として取得できます:
241
+
242
+ ```tsx
243
+ {myMarkdownContent.value}
244
+ {String(myMarkdownContent)}
245
+ {myMarkdownContent.toString()}
246
+ ```
247
+
248
+ また、Markdownのメタデータにアクセスできます:
249
+
250
+ ```tsx
251
+ {myMarkdownContent.metadata}
252
+ {myMarkdownContent.metadata.title}
253
+ ```
254
+
255
+ </Tab>
256
+ <Tab label="Vue" value="vue">
257
+ Vueでは、Markdownコンテンツは`component`ビルトインまたはノードとして直接レンダリングできます。
258
+
259
+ ```vue fileName="App.vue"
260
+ <script setup>
261
+ import { useIntlayer } from "vue-intlayer";
262
+ const { myMarkdownContent } = useIntlayer("app");
263
+ </script>
264
+
265
+ <template>
266
+ <component :is="myMarkdownContent" />
267
+ </template>
268
+ ```
269
+
270
+ `intlayerMarkdown`プラグイン経由でグローバルに設定します(MDXカスタムコンポーネントをサポート):
271
+
272
+ ```ts fileName="main.ts"
273
+ import { intlayerMarkdown } from "vue-intlayer/markdown";
274
+
275
+ app.use(intlayerMarkdown, {
276
+ components: {
277
+ h1: (props) => h('h1', { style: { color: 'green' } }, props.children),
278
+ MyButton: (props) => h('button', props), // MDXコンポーネント
279
+ },
280
+ });
281
+ ```
282
+
283
+ > `intlayerMarkdown`プラグインがインストールされていない場合、Intlayerはデフォルトのコンパイラーを使用してレンダリングします。
284
+
285
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
286
+
287
+ ```vue
288
+ <component :is="myMarkdownContent.use({
289
+ h1: (props) => h('h1', { style: { color: 'red' } }, props.children),
290
+ })" />
291
+ ```
292
+
293
+ Markdownを文字列として取得できます:
294
+
295
+ ```vue
296
+ {{ myMarkdownContent.value }}
297
+ {{ String(myMarkdownContent) }}
298
+ {{ myMarkdownContent.toString() }}
299
+ ```
300
+
301
+ また、Markdownのメタデータにアクセスできます:
302
+
303
+ ```vue
304
+ <component :is="myMarkdownContent.metadata" />
305
+ <component :is="myMarkdownContent.metadata.title" />
306
+ ```
307
+
308
+ </Tab>
309
+ <Tab label="Svelte" value="svelte">
310
+ SvelteはデフォルトでMarkdownをHTML文字列としてレンダリングします。`{@html}`を使用してレンダリングします。
311
+
312
+ ```svelte fileName="App.svelte"
313
+ <script lang="ts">
314
+ import { useIntlayer } from "svelte-intlayer";
315
+ import { MarkdownProvider } from "svelte-intlayer/markdown";
316
+ import MyHeading from "./MyHeading.svelte";
317
+
318
+ const content = useIntlayer("app");
319
+ </script>
320
+
321
+ <MarkdownProvider components={{ h1: MyHeading }}>
322
+ {@html $content.myMarkdownContent}
323
+ </MarkdownProvider>
324
+ ```
325
+
326
+ > `MarkdownProvider`が存在しない場合、Intlayerはデフォルトのコンパイラーを使用してMarkdownをレンダリングします。
327
+
328
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
329
+
330
+ ```svelte
331
+ {@html $content.myMarkdownContent.use({ ... })}
332
+ ```
333
+
334
+ Markdownを文字列として取得できます:
335
+
336
+ ```svelte
337
+ {$content.myMarkdownContent.value}
338
+ {String($content.myMarkdownContent)}
339
+ {$content.myMarkdownContent.toString()}
340
+ ```
341
+
342
+ また、Markdownのメタデータにアクセスできます:
343
+
344
+ ```svelte
345
+ {$content.myMarkdownContent.metadata}
346
+ {$content.myMarkdownContent.metadata.title}
347
+ ```
348
+
349
+ </Tab>
350
+ <Tab label="Preact" value="preact">
351
+ PreactはMarkdownノードを直接JSXでサポートしています。
352
+
353
+ ```tsx fileName="App.tsx"
354
+ import { useIntlayer } from "preact-intlayer";
355
+ import { MarkdownProvider } from "preact-intlayer/markdown";
356
+
357
+ const AppContent = () => {
358
+ const { myMarkdownContent } = useIntlayer("app");
359
+ return <div>{myMarkdownContent}</div>;
360
+ };
361
+
362
+ const App = () => (
363
+ <MarkdownProvider
364
+ components={{
365
+ h1: ({ children }) => <h1 style={{ color: "red" }}>{children}</h1>,
366
+ MyButton: (props) => <button {...props} />, // MDXコンポーネント
367
+ }}
368
+ >
369
+ <AppContent />
370
+ </MarkdownProvider>
371
+ );
372
+ ```
373
+
374
+ > `MarkdownProvider`が存在しない場合、intlayerはデフォルトのMarkdown to JSXパーサーを使用してMarkdownをレンダリングします。
375
+
376
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
377
+
378
+ ```tsx
379
+ {myMarkdownContent.use({
380
+ h1: ({ children }) => <h1 style={{ color: "red" }}>{children}</h1>,
381
+ })}
382
+ ```
383
+
384
+ Markdownを文字列として取得できます:
385
+
386
+ ```tsx
387
+ {myMarkdownContent.value}
388
+ {String(myMarkdownContent)}
389
+ {myMarkdownContent.toString()}
390
+ ```
391
+
392
+ また、Markdownのメタデータにアクセスできます:
393
+
394
+ ```tsx
395
+ {myMarkdownContent.metadata}
396
+ {myMarkdownContent.metadata.title}
397
+ ```
398
+
399
+ </Tab>
400
+ <Tab label="Solid" value="solid">
401
+ Solidはmarkdownノードを直接JSXでサポートしています。
402
+
403
+ ```tsx fileName="App.tsx"
404
+ import { useIntlayer } from "solid-intlayer";
405
+ import { MarkdownProvider } from "solid-intlayer/markdown";
406
+
407
+ const AppContent = () => {
408
+ const { myMarkdownContent } = useIntlayer("app");
409
+ return <div>{myMarkdownContent}</div>;
410
+ };
411
+
412
+ const App = () => (
413
+ <MarkdownProvider
414
+ components={{
415
+ h1: (props) => <h1 style={{ color: "red" }}>{props.children}</h1>,
416
+ MyButton: (props) => <button {...props} />, // MDXコンポーネント
417
+ }}
418
+ >
419
+ <AppContent />
420
+ </MarkdownProvider>
421
+ );
422
+ ```
423
+
424
+ > `MarkdownProvider`が存在しない場合、intlayerはデフォルトのMarkdown to JSXパーサーを使用してMarkdownをレンダリングします。
425
+
426
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
427
+
428
+ ```tsx
429
+ {myMarkdownContent.use({
430
+ h1: (props) => <h1 style={{ color: "red" }}>{props.children}</h1>,
431
+ })}
432
+ ```
433
+
434
+ Markdownを文字列として取得できます:
435
+
436
+ ```tsx
437
+ {myMarkdownContent.value}
438
+ {String(myMarkdownContent)}
439
+ {myMarkdownContent.toString()}
440
+ ```
441
+
442
+ また、Markdownのメタデータにアクセスできます:
443
+
444
+ ```tsx
445
+ {myMarkdownContent.metadata}
446
+ {myMarkdownContent.metadata.title}
447
+ ```
448
+
449
+ </Tab>
450
+ <Tab label="Angular" value="angular">
451
+ Angularは`[innerHTML]`ディレクティブを使用してMarkdownコンテンツをレンダリングします。
452
+
453
+ ```typescript fileName="app.component.ts"
454
+ import { Component } from "@angular/core";
455
+ import { useIntlayer } from "angular-intlayer";
456
+
457
+ @Component({
458
+ selector: "app-root",
459
+ template: `<div [innerHTML]="content().myMarkdownContent"></div>`,
460
+ })
461
+ export class AppComponent {
462
+ content = useIntlayer("app");
463
+ }
464
+ ```
465
+
466
+ > IntlayerMarkdownプロバイダーが設定されていない場合、Intlayerはデフォルトのコンパイラーを使用してレンダリングします。
467
+
468
+ `.use()`メソッドを使用して特定のノードのローカルオーバーライドを提供することもできます:
469
+
470
+ ```typescript
471
+ content().myMarkdownContent.use({
472
+ h1: { class: "text-3xl font-bold" },
473
+ })
474
+ ```
475
+
476
+ Markdownを文字列として取得できます:
477
+
478
+ ```typescript
479
+ content().myMarkdownContent.value
480
+ String(content().myMarkdownContent)
481
+ content().myMarkdownContent.toString()
482
+ ```
483
+
484
+ また、Markdownのメタデータにアクセスできます:
485
+
486
+ ```typescript
487
+ content().myMarkdownContent.metadata
488
+ content().myMarkdownContent.metadata.title
489
+ ```
490
+
491
+ </Tab>
492
+ </Tabs>
493
+
494
+ ### 2. ヘルパーユーティリティ(Markdown文字列のみ)
495
+
496
+ これらのユーティリティは**raw Markdown文字列**をレンダリングし、`useIntlayer`に依存しません。辞書以外のソースからMarkdownをレンダリングする必要がある場合に使用してください。
497
+
498
+ <Tabs group="framework">
499
+ <Tab label="React" value="react">
500
+
501
+ #### `<MarkdownRenderer />` コンポーネント
502
+
503
+ 特定のオプションで Markdown 文字列をレンダリングします。
504
+
505
+ ```tsx
506
+ import { MarkdownRenderer } from "react-intlayer/markdown";
507
+
508
+ <MarkdownRenderer forceBlock={true} tagfilter={true}>
509
+ {"# My Title"}
510
+ </MarkdownRenderer>
511
+ ```
512
+
513
+ #### `useMarkdownRenderer()` Hook
514
+
515
+ 事前に設定されたレンダラー関数を取得します。
516
+
517
+ ```tsx
518
+ import { useMarkdownRenderer } from "react-intlayer/markdown";
519
+
520
+ const renderMarkdown = useMarkdownRenderer({
521
+ forceBlock: true,
522
+ components: { h1: (props) => <h1 {...props} className="custom" /> }
523
+ });
524
+
525
+ return renderMarkdown("# My Title");
526
+ ```
527
+
528
+ #### `renderMarkdown()` ユーティリティ
529
+ コンポーネント外でレンダリングするためのスタンドアロンユーティリティ。
530
+
531
+ ```tsx
532
+ import { renderMarkdown } from "react-intlayer/markdown";
533
+
534
+ const jsx = renderMarkdown("# My Title", { forceBlock: true });
535
+ ```
536
+
537
+ </Tab>
538
+ <Tab label="Next.js" value="nextjs">
539
+
540
+ #### `<MarkdownRenderer />` コンポーネント
541
+
542
+ 特定のオプションを使用して Markdown 文字列をレンダリングします。
543
+
544
+ ```tsx
545
+ import { MarkdownRenderer } from "next-intlayer/markdown";
546
+
547
+ <MarkdownRenderer forceBlock={true} tagfilter={true}>
548
+ {"# My Title"}
549
+ </MarkdownRenderer>
550
+ ```
551
+
552
+ #### `useMarkdownRenderer()` Hook
553
+
554
+ 事前に構成されたレンダラー関数を取得します。
555
+
556
+ ```tsx
557
+ import { useMarkdownRenderer } from "next-intlayer/markdown";
558
+
559
+ const renderMarkdown = useMarkdownRenderer({
560
+ forceBlock: true,
561
+ components: { h1: (props) => <h1 {...props} className="custom" /> }
562
+ });
563
+
564
+ return renderMarkdown("# My Title");
565
+ ```
566
+
567
+ #### `renderMarkdown()` ユーティリティ
568
+ コンポーネント外でのレンダリング用のスタンドアロンユーティリティ。
569
+
570
+ ```tsx
571
+ import { renderMarkdown } from "next-intlayer/markdown";
572
+
573
+ const jsx = renderMarkdown("# My Title", { forceBlock: true });
574
+ ```
575
+
576
+ </Tab>
577
+ <Tab label="Vue" value="vue">
578
+
579
+ #### `<MarkdownRenderer />` コンポーネント
580
+
581
+ ```vue
582
+ <script setup>
583
+ import { MarkdownRenderer } from "vue-intlayer/markdown";
584
+ </script>
585
+
586
+ <template>
587
+ <MarkdownRenderer :forceBlock="true" content="# My Title" />
588
+ </template>
589
+ ```
590
+
591
+ </Tab>
592
+ <Tab label="Svelte" value="svelte">
593
+
594
+ #### `<MarkdownRenderer />` コンポーネント
595
+
596
+ ```svelte
597
+ <script lang="ts">
598
+ import { MarkdownRenderer } from "svelte-intlayer/markdown";
599
+ </script>
600
+
601
+ <MarkdownRenderer forceBlock={true} value="# My Title" />
602
+ ```
603
+
604
+ #### `useMarkdownRenderer()` Hook
605
+
606
+ ```svelte
607
+ <script lang="ts">
608
+ import { useMarkdownRenderer } from "svelte-intlayer/markdown";
609
+ const render = useMarkdownRenderer();
610
+ </script>
611
+
612
+ {@html render("# My Title")}
613
+ ```
614
+
615
+ #### `renderMarkdown()` ユーティリティ
616
+
617
+ ```svelte
618
+ <script lang="ts">
619
+ import { renderMarkdown } from "svelte-intlayer/markdown";
620
+ </script>
621
+
622
+ {@html renderMarkdown("# My Title")}
623
+ ```
624
+
625
+ </Tab>
626
+ <Tab label="Preact" value="preact">
627
+ #### `<MarkdownRenderer />` コンポーネント
628
+
629
+ ```tsx
630
+ import { MarkdownRenderer } from "preact-intlayer/markdown";
631
+
632
+ <MarkdownRenderer forceBlock={true}>
633
+ {"# My Title"}
634
+ </MarkdownRenderer>
635
+ ```
636
+
637
+ #### `useMarkdownRenderer()` Hook
638
+
639
+ ```tsx
640
+ import { useMarkdownRenderer } from "preact-intlayer/markdown";
641
+
642
+ const render = useMarkdownRenderer();
643
+
644
+ return <div>{render("# My Title")}</div>;
645
+ ```
646
+
647
+ #### `renderMarkdown()` ユーティリティ
648
+
649
+ ```tsx
650
+ import { renderMarkdown } from "preact-intlayer/markdown";
651
+
652
+ return <div>{renderMarkdown("# My Title")}</div>;
653
+ ```
654
+
655
+ </Tab>
656
+ <Tab label="Solid" value="solid">
657
+ #### `<MarkdownRenderer />` コンポーネント
658
+
659
+ ```tsx
660
+ import { MarkdownRenderer } from "solid-intlayer/markdown";
661
+
662
+ <MarkdownRenderer forceBlock={true}>
663
+ {"# My Title"}
664
+ </MarkdownRenderer>
665
+ ```
666
+
667
+ #### `useMarkdownRenderer()` Hook
668
+
669
+ ```tsx
670
+ import { useMarkdownRenderer } from "solid-intlayer/markdown";
671
+
672
+ const render = useMarkdownRenderer();
673
+
674
+ return <div>{render("# My Title")}</div>;
675
+ ```
676
+
677
+ #### `renderMarkdown()` ユーティリティ
678
+
679
+ ```tsx
680
+ import { renderMarkdown } from "solid-intlayer/markdown";
681
+
682
+ return <div>{renderMarkdown("# My Title")}</div>;
683
+ ```
684
+
685
+ </Tab>
686
+ <Tab label="Angular" value="angular">
687
+ #### `IntlayerMarkdownService` サービス
688
+ サービスを使用してMarkdown文字列をレンダリングします。
689
+
690
+ ```typescript
691
+ import { IntlayerMarkdownService } from "angular-intlayer/markdown";
692
+
693
+ export class MyComponent {
694
+ constructor(private markdownService: IntlayerMarkdownService) {}
695
+
696
+ renderMarkdown(markdown: string) {
697
+ return this.markdownService.renderMarkdown(markdown);
698
+ }
699
+ }
700
+ ```
701
+
702
+ </Tab>
703
+ </Tabs>
704
+
705
+ ## `MarkdownProvider` を使用したグローバル設定
706
+
707
+ `MarkdownProvider`(またはそのフレームワーク相当)は、アプリケーション全体の Markdown レンダリングパイプラインを設定します。自動的な `useIntlayer` レンダリングとヘルパーユーティリティの両方に適用されます。ここで設定されたオプションはデフォルトです — `.use()` はノードレベルでそれらをオーバーライドします。
708
+
709
+ <Tabs group="framework">
710
+ <Tab label="React" value="react">
711
+
712
+ ```tsx fileName="AppProvider.tsx"
713
+ import { MarkdownProvider } from "react-intlayer/markdown";
714
+
715
+ export const AppProvider = ({ children }) => (
716
+ <MarkdownProvider
717
+ components={{
718
+ h1: (props) => <h1 style={{color: 'green'}} {...props} />,
719
+ a: ({ href, ...props }) => <a style={{color: 'red'}} {...props} />,
720
+ MyCustomJSXComponent: (props) => <span style={{color: 'red'}} {...props} />,
721
+ }}
722
+ >
723
+ {children}
724
+ </MarkdownProvider>
725
+ );
726
+ ```
727
+
728
+
729
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
730
+
731
+ 独自の Markdown レンダラーを使用することもできます:
732
+
733
+ ```tsx fileName="AppProvider.tsx"
734
+ import { MarkdownProvider } from "react-intlayer/markdown";
735
+
736
+ export const AppProvider = ({ children }) => (
737
+ <MarkdownProvider
738
+ renderMarkdown={async (md) => {
739
+ // アプリケーションのバンドルサイズを削減するために動的インポートを使用してください
740
+ const { renderMarkdown } = await import('react-intlayer/markdown');
741
+ return renderMarkdown(md);
742
+ }}
743
+ >
744
+ {children}
745
+ </MarkdownProvider>
746
+ );
747
+ ```
748
+
749
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
750
+
751
+ </Tab>
752
+ <Tab label="Next.js" value="nextjs">
753
+
754
+ ```tsx fileName="AppProvider.tsx"
755
+ import { MarkdownProvider } from "next-intlayer/markdown";
756
+
757
+ export const AppProvider = ({ children }) => (
758
+ <MarkdownProvider
759
+ components={{
760
+ h1: (props) => <h1 style={{color: 'green'}} {...props} />,
761
+ a: ({ href, ...props }) => <a style={{color: 'red'}} {...props} />,
762
+ MyCustomJSXComponent: (props) => <span style={{color: 'red'}} {...props} />,
763
+ }}
764
+ >
765
+ {children}
766
+ </MarkdownProvider>
767
+ );
768
+ ```
769
+
770
+
771
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
772
+
773
+ 独自の Markdown レンダラーを使用することもできます:
774
+
775
+ ```tsx fileName="AppProvider.tsx"
776
+ import { MarkdownProvider } from "next-intlayer/markdown";
777
+
778
+ export const AppProvider = ({ children }) => (
779
+ <MarkdownProvider
780
+ renderMarkdown={async (md) => {
781
+ // アプリケーションのバンドルサイズを削減するために動的インポートを使用してください
782
+ const { renderMarkdown } = await import('next-intlayer/markdown');
783
+ return renderMarkdown(md);
784
+ }}
785
+ >
786
+ {children}
787
+ </MarkdownProvider>
788
+ );
789
+ ```
790
+
791
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
792
+
793
+ </Tab>
794
+ <Tab label="Vue" value="vue">
795
+
796
+ ```typescript fileName="main.ts"
797
+ import { createApp } from "vue";
798
+ import { intlayer } from "vue-intlayer";
799
+ import { intlayerMarkdown } from "vue-intlayer/markdown";
800
+ import App from "./App.vue";
801
+
802
+ const app = createApp(App);
803
+
804
+ app.use(intlayer);
805
+ app.use(intlayerMarkdown, {
806
+ components: {
807
+ h1: (props) =>
808
+ h('h1', { style: { color: 'orange' }, ...props }, props.children),
809
+ ComponentDemo: () => h('div', { style: { background: 'grey' } }, 'DEMO'),
810
+ bold: (props) => h('strong', props),
811
+ code: (props) => h('code', props),
812
+ },
813
+ });
814
+
815
+ app.mount("#app");
816
+ ```
817
+
818
+
819
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
820
+
821
+ 独自の Markdown レンダラーを使用することもできます:
822
+
823
+ ```typescript fileName="main.ts"
824
+ import { createApp } from "vue";
825
+ import { intlayer } from "vue-intlayer";
826
+ import { intlayerMarkdown } from "vue-intlayer/markdown";
827
+ import App from "./App.vue";
828
+
829
+ const app = createApp(App);
830
+
831
+ app.use(intlayer);
832
+ app.use(intlayerMarkdown, {
833
+ renderMarkdown: async (md) => {
834
+ const { renderMarkdown } = await import('vue-intlayer/markdown');
835
+ return renderMarkdown(md);
836
+ },
837
+ });
838
+
839
+ app.mount("#app");
840
+ ```
841
+
842
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
843
+
844
+ </Tab>
845
+ <Tab label="Svelte" value="svelte">
846
+
847
+ ```svelte fileName="App.svelte"
848
+ <script lang="ts">
849
+ import { MarkdownProvider } from "svelte-intlayer/markdown";
850
+ import MyHeading from "./MyHeading.svelte";
851
+ </script>
852
+
853
+ <MarkdownProvider
854
+ components={{
855
+ h1: MyHeading,
856
+ }}
857
+ >
858
+ <slot />
859
+ </MarkdownProvider>
860
+ ```
861
+
862
+
863
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
864
+
865
+ 独自の Markdown レンダラーを使用することもできます:
866
+
867
+ ```svelte fileName="App.svelte"
868
+ <script lang="ts">
869
+ import { MarkdownProvider } from "svelte-intlayer/markdown";
870
+ </script>
871
+
872
+ <MarkdownProvider
873
+ renderMarkdown={async (md) => {
874
+ const { renderMarkdown } = await import('svelte-intlayer/markdown');
875
+ return renderMarkdown(md);
876
+ }}
877
+ >
878
+ <slot />
879
+ </MarkdownProvider>
880
+ ```
881
+
882
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
883
+
884
+ </Tab>
885
+ <Tab label="Preact" value="preact">
886
+
887
+ ```tsx fileName="AppProvider.tsx"
888
+ import { MarkdownProvider } from "preact-intlayer/markdown";
889
+
890
+ export const AppProvider = ({ children }) => (
891
+ <MarkdownProvider
892
+ components={{
893
+ h1: ({ children }) => <h1 className="text-2xl font-bold">{children}</h1>,
894
+ }}
895
+ >
896
+ {children}
897
+ </MarkdownProvider>
898
+ );
899
+ ```
900
+
901
+
902
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
903
+
904
+ 独自の Markdown レンダラーを使用することもできます:
905
+
906
+ ```tsx fileName="AppProvider.tsx"
907
+ import { MarkdownProvider } from "preact-intlayer/markdown";
908
+
909
+ export const AppProvider = ({ children }) => (
910
+ <MarkdownProvider
911
+ renderMarkdown={async (md) => {
912
+ const { renderMarkdown } = await import('preact-intlayer/markdown');
913
+ return renderMarkdown(md);
914
+ }}
915
+ >
916
+ {children}
917
+ </MarkdownProvider>
918
+ );
919
+ ```
920
+
921
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
922
+
923
+ </Tab>
924
+ <Tab label="Solid" value="solid">
925
+
926
+ ```tsx fileName="AppProvider.tsx"
927
+ import { MarkdownProvider } from "solid-intlayer/markdown";
928
+
929
+ export const AppProvider = (props) => (
930
+ <MarkdownProvider
931
+ components={{
932
+ h1: (props) => <h1 className="text-2xl font-bold">{props.children}</h1>,
933
+ }}
934
+ >
935
+ {props.children}
936
+ </MarkdownProvider>
937
+ );
938
+ ```
939
+
940
+
941
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
942
+
943
+ 独自の Markdown レンダラーを使用することもできます:
944
+
945
+ ```tsx fileName="AppProvider.tsx"
946
+ import { MarkdownProvider } from "solid-intlayer/markdown";
947
+
948
+ export const AppProvider = (props) => (
949
+ <MarkdownProvider
950
+ renderMarkdown={async (md) => {
951
+ const { renderMarkdown } = await import('solid-intlayer/markdown');
952
+ return renderMarkdown(md);
953
+ }}
954
+ >
955
+ {props.children}
956
+ </MarkdownProvider>
957
+ );
958
+ ```
959
+
960
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
961
+
962
+ </Tab>
963
+ <Tab label="Angular" value="angular">
964
+
965
+ ```typescript fileName="app.config.ts"
966
+ import { createIntlayerMarkdownProvider } from "angular-intlayer/markdown";
967
+
968
+ export const appConfig: ApplicationConfig = {
969
+ providers: [
970
+ createIntlayerMarkdownProvider({
971
+ components: {
972
+ h1: { class: "text-2xl font-bold" },
973
+ },
974
+ }),
975
+ ],
976
+ };
977
+ ```
978
+
979
+
980
+ > MDX がサポートされています — Markdown 内で使用されるコンポーネント名(例:`<MyCustomJSXComponent />`)は `components` マップに対して解決されます。
981
+
982
+ 独自の Markdown レンダラーを使用することもできます:
983
+
984
+ ```typescript fileName="app.config.ts"
985
+ import { createIntlayerMarkdownProvider } from "angular-intlayer/markdown";
986
+
987
+ export const appConfig: ApplicationConfig = {
988
+ providers: [
989
+ createIntlayerMarkdownProvider({
990
+ renderMarkdown: async (md) => {
991
+ const { renderMarkdown } = await import('angular-intlayer/markdown');
992
+ return renderMarkdown(md);
993
+ },
994
+ }),
995
+ ],
996
+ };
997
+ ```
998
+
999
+ > Markdown レンダラーを動的にインポートすることは、アプリケーションのバンドルサイズを削減するためのよい方法です。
1000
+
1001
+ </Tab>
1002
+ </Tabs>
1003
+
1004
+ ## Suspense
1005
+
1006
+ Intlayer Markdown レンダラーは動的に読み込まれます。最適化されていますが、基盤となるパーサーチャンクは約 55kb です。これを同期的に読み込むと、初期ページレンダリングが遅延し、First Contentful Paint (FCP) が低下します。
1007
+
1008
+ UI をブロックするのを防ぐため、Intlayer は React の Suspense API と統合されています。バックグラウンドでパーサーを取得し、ダウンロード中に Promise をスローします。
1009
+
1010
+ Intlayer Markdown をレンダリングするコンポーネントを `<Suspense>` 境界でラップします。これにより、チャンクがダウンロード中にローカライズされたフォールバック状態が表示され、DOM の残りが即座にレンダリングできます。
1011
+
1012
+ 警告: `<Suspense>` 境界を指定しない場合、React はルートレベルで一時停止するか、55kb チャンク全体が完全に読み込まれるまでコンポーネントツリー全体のレンダリングをブロックします。
1013
+
1014
+ <Tabs>
1015
+ <Tab label="Next.js" value="nextjs">
1016
+
1017
+ Next.js App Router では、クライアントコンポーネント用に React `Suspense` を使用するか、サーバーコンポーネント用に `loading.tsx` ファイルを使用できます。
1018
+
1019
+ **クライアントコンポーネント:**
1020
+
1021
+ ```tsx fileName="components/MyComponent.tsx"
1022
+ "use client";
1023
+ import { useIntlayer } from "next-intlayer";
1024
+ import { Suspense } from "react";
1025
+
1026
+ const MyComponent = () => {
1027
+ const markdownContent = useIntlayer("my-markdown");
1028
+
1029
+ return (
1030
+ <Suspense fallback={<div>Loading...</div>}>{markdownContent}</Suspense>
1031
+ );
1032
+ };
1033
+ ```
1034
+
1035
+ **`loading.tsx` を使用したサーバーコンポーネント:**
1036
+
1037
+ ```tsx fileName="app/loading.tsx"
1038
+ export default function Loading() {
1039
+ return <div>Loading...</div>;
1040
+ }
1041
+ ```
1042
+
1043
+ ```tsx fileName="app/page.tsx"
1044
+ import { useIntlayer } from "next-intlayer/server";
1045
+
1046
+ const MyPage = () => {
1047
+ const markdownContent = useIntlayer("my-markdown");
1048
+ return <div>{markdownContent}</div>;
1049
+ };
1050
+
1051
+ export default MyPage;
1052
+ ```
1053
+
1054
+ </Tab>
1055
+
1056
+ <Tab label="React" value="react">
1057
+
1058
+ ```tsx
1059
+ import { useIntlayer } from "react-intlayer";
1060
+ import { Suspense } from "react";
1061
+
1062
+ const MyComponent = () => {
1063
+ const markdownContent = useIntlayer("my-markdown");
1064
+
1065
+ return (
1066
+ <Suspense fallback={<div>Loading...</div>}>{markdownContent}</Suspense>
1067
+ );
1068
+ };
1069
+ ```
1070
+
1071
+ </Tab>
1072
+
1073
+ <Tab label="Vue" value="vue">
1074
+
1075
+ Vue には組み込みの `<Suspense>` コンポーネントがあります。Markdown コンテンツをレンダリングするコンポーネントを `<Suspense>` 境界でラップします。
1076
+
1077
+ ```vue fileName="MyComponent.vue"
1078
+ <script setup>
1079
+ import { useIntlayer } from "vue-intlayer";
1080
+
1081
+ const { markdownContent } = useIntlayer("my-markdown");
1082
+ </script>
1083
+
1084
+ <template>
1085
+ <Suspense>
1086
+ <component :is="markdownContent" />
1087
+ <template #fallback>
1088
+ <div>Loading...</div>
1089
+ </template>
1090
+ </Suspense>
1091
+ </template>
1092
+ ```
1093
+
1094
+ </Tab>
1095
+ <Tab label="Svelte" value="svelte">
1096
+
1097
+ Svelte には同等の Suspense API がありません。`{#await}` ブロックを使用して Markdown コンテンツの非同期レンダリングを処理します。
1098
+
1099
+ ```svelte fileName="MyComponent.svelte"
1100
+ <script lang="ts">
1101
+ import { useIntlayer } from "svelte-intlayer";
1102
+
1103
+ const content = useIntlayer("my-markdown");
1104
+ </script>
1105
+
1106
+ {#await $content.markdownContent}
1107
+ <div>Loading...</div>
1108
+ {:then rendered}
1109
+ {@html rendered}
1110
+ {/await}
1111
+ ```
1112
+
1113
+ </Tab>
1114
+ <Tab label="Preact" value="preact">
1115
+
1116
+ Preact は `preact/compat` 経由で React の Suspense API をサポートしています。
1117
+
1118
+ ```tsx fileName="MyComponent.tsx"
1119
+ import { useIntlayer } from "preact-intlayer";
1120
+ import { Suspense } from "preact/compat";
1121
+
1122
+ const MyComponent = () => {
1123
+ const markdownContent = useIntlayer("my-markdown");
1124
+
1125
+ return (
1126
+ <Suspense fallback={<div>Loading...</div>}>{markdownContent}</Suspense>
1127
+ );
1128
+ };
1129
+ ```
1130
+
1131
+ </Tab>
1132
+ <Tab label="Solid" value="solid">
1133
+
1134
+ Solid には `solid-js` からの独自の `<Suspense>` コンポーネントがあります。
1135
+
1136
+ ```tsx fileName="MyComponent.tsx"
1137
+ import { useIntlayer } from "solid-intlayer";
1138
+ import { Suspense } from "solid-js";
1139
+
1140
+ const MyComponent = () => {
1141
+ const { markdownContent } = useIntlayer("my-markdown");
1142
+
1143
+ return (
1144
+ <Suspense fallback={<div>Loading...</div>}>{markdownContent}</Suspense>
1145
+ );
1146
+ };
1147
+ ```
1148
+
1149
+ </Tab>
1150
+ <Tab label="Angular" value="angular">
1151
+
1152
+ Angular には Suspense API がありません。Angular の遅延可能ビュー (`@defer`) を使用して、遅延読み込みされた Markdown コンテンツを処理します (Angular 17 以上が必要)。
1153
+
1154
+ ```typescript fileName="my.component.ts"
1155
+ import { Component } from "@angular/core";
1156
+ import { useIntlayer } from "angular-intlayer";
1157
+
1158
+ @Component({
1159
+ selector: "app-my",
1160
+ template: `
1161
+ @defer {
1162
+ <div [innerHTML]="content().markdownContent"></div>
1163
+ } @loading {
1164
+ <div>Loading...</div>
1165
+ }
1166
+ `,
1167
+ })
1168
+ export class MyComponent {
1169
+ content = useIntlayer("my-markdown");
1170
+ }
1171
+ ```
1172
+
1173
+ </Tab>
1174
+ </Tabs>
1175
+
1176
+ ---
1177
+
1178
+ ## Server-Side Rendering (SSR) と Hydration
1179
+
1180
+ remark / rehype などの他の Markdown パーサーと比較して、Intlayer Markdown は依存関係がなく、クライアント側とサーバー側の両方で実行されます。
1181
+
1182
+ しかし Intlayer は Server-Side Rendering (SSR) フレームワーク(Next.js App Router、React Router、Nuxt、SvelteKit など)用にパースを最適化しています。
1183
+
1184
+ 生の Markdown 文字列をクライアントに送信してブラウザーで解析する代わりに(パフォーマンス低下を招きます)、Intlayer では Markdown をサーバー上の Abstract Syntax Tree (AST) に事前解析することができます。
1185
+
1186
+ フレームワークの Intlayer パッケージから `parseMarkdown` 関数をサーバー側で使用して、シリアライズ可能な AST(`ParsedMarkdown` オブジェクト)を生成し、フロントエンドに直接渡すことができます。すべての Intlayer レンダリング ユーティリティ(`<MarkdownRenderer>`、`useMarkdownRenderer` など)は、このAST オブジェクトを自動的に受け入れ、シームレスにレンダリングします。
1187
+
1188
+ ### Server/Client アーキテクチャの例
1189
+
1190
+ <Tabs group="framework">
1191
+ <Tab label="React Router" value="react">
1192
+
1193
+ ```tsx fileName="server.ts"
1194
+ import { parseMarkdown } from "react-intlayer/markdown";
1195
+
1196
+ // 1. サーバー上で: markdown を シリアライズ可能な AST に解析します
1197
+ export const loader = async () => {
1198
+ const markdownString = "## My title \n\nLorem Ipsum";
1199
+ const ast = parseMarkdown(markdownString);
1200
+
1201
+ // AST を JSON としてクライアントに返します
1202
+ return Response.json({ content: ast });
1203
+ };
1204
+ ```
1205
+
1206
+ ```tsx fileName="client.tsx"
1207
+ import { useLoaderData } from "react-router";
1208
+ import { MarkdownRenderer } from "react-intlayer/markdown";
1209
+
1210
+ // 2. クライアント上で: AST を再解析せずに直接レンダリングします
1211
+ export default function Page() {
1212
+ const { content } = useLoaderData();
1213
+
1214
+ // レンダラーは生の文字列または解析された AST のいずれかを受け入れます
1215
+ return <MarkdownRenderer content={content} />;
1216
+ }
1217
+ ```
1218
+
1219
+ </Tab>
1220
+ <Tab label="Next.js" value="nextjs">
1221
+
1222
+ ```tsx fileName="app/page.tsx"
1223
+ import { parseMarkdown } from "next-intlayer/markdown";
1224
+ import { MarkdownRenderer } from "next-intlayer/markdown";
1225
+
1226
+ export default async function Page() {
1227
+ // 1. サーバー上で markdown を シリアライズ可能な AST に解析します
1228
+ const markdownString = "## My title \n\nLorem Ipsum";
1229
+ const ast = parseMarkdown(markdownString);
1230
+
1231
+ // 2. AST を直接レンダリングします
1232
+ // Server Component では、これはシームレスに機能し、AST を
1233
+ // 必要に応じて基になるクライアント コンポーネントに直接渡します。
1234
+ return <MarkdownRenderer content={ast} />;
1235
+ }
1236
+ ```
1237
+
1238
+ </Tab>
1239
+ <Tab label="Vue / Nuxt" value="vue">
1240
+
1241
+ ```vue fileName="pages/index.vue"
1242
+ <script setup lang="ts">
1243
+ import { parseMarkdown } from "vue-intlayer/markdown";
1244
+ import { MarkdownRenderer } from "vue-intlayer/markdown";
1245
+
1246
+ // 1. サーバー上で markdown をフェッチして AST に解析します
1247
+ const { data: ast } = await useAsyncData('markdown', () => {
1248
+ const markdownString = "## My title \n\nLorem Ipsum";
1249
+ return parseMarkdown(markdownString);
1250
+ });
1251
+ </script>
1252
+
1253
+ <template>
1254
+ <!-- 2. クライアント上で: AST を再解析せずに直接レンダリングします -->
1255
+ <MarkdownRenderer :content="ast" />
1256
+ </template>
1257
+ ```
1258
+
1259
+ </Tab>
1260
+ <Tab label="SvelteKit" value="svelte">
1261
+
1262
+ ```typescript fileName="+page.server.ts"
1263
+ import { parseMarkdown } from "svelte-intlayer/markdown";
1264
+
1265
+ // 1. サーバー上で: markdown を シリアライズ可能な AST に解析します
1266
+ export const load = async () => {
1267
+ const markdownString = "## My title \n\nLorem Ipsum";
1268
+ const ast = parseMarkdown(markdownString);
1269
+
1270
+ // AST をクライアントに返します
1271
+ return { content: ast };
1272
+ };
1273
+ ```
1274
+
1275
+ ```svelte fileName="+page.svelte"
1276
+ <script lang="ts">
1277
+ import { MarkdownRenderer } from "svelte-intlayer/markdown";
1278
+ export let data;
1279
+ </script>
1280
+
1281
+ <!-- 2. クライアント上で: AST を再解析せずに直接レンダリングします -->
1282
+ <MarkdownRenderer value={data.content} />
1283
+ ```
1284
+
1285
+ </Tab>
1286
+ <Tab label="Angular" value="angular">
1287
+
1288
+ Angular SSR は通常、初期読み込み中にサーバー上でデータを解決し、クライアント上でハイドレーションします。リゾルバーを使用して AST を渡すことができます。
1289
+
1290
+ ```typescript fileName="app.resolver.ts"
1291
+ import { Injectable } from "@angular/core";
1292
+ import { Resolve } from "@angular/router";
1293
+ import { parseMarkdown, type ParsedMarkdown } from "angular-intlayer/markdown";
1294
+
1295
+ @Injectable({ providedIn: "root" })
1296
+ export class MarkdownResolver implements Resolve<ParsedMarkdown> {
1297
+ resolve(): ParsedMarkdown {
1298
+ const markdownString = "## My title \n\nLorem Ipsum";
1299
+ // 1. サーバー上で: markdown を シリアライズ可能な AST に解析します
1300
+ return parseMarkdown(markdownString);
1301
+ }
1302
+ }
1303
+ ```
1304
+
1305
+ ```typescript fileName="app.component.ts"
1306
+ import { Component } from "@angular/core";
1307
+ import { ActivatedRoute } from "@angular/router";
1308
+ import { IntlayerMarkdownService, type ParsedMarkdown } from "angular-intlayer/markdown";
1309
+
1310
+ @Component({
1311
+ selector: "app-root",
1312
+ template: `<div [innerHTML]="renderedMarkdown"></div>`,
1313
+ })
1314
+ export class AppComponent {
1315
+ renderedMarkdown: string = "";
1316
+
1317
+ constructor(
1318
+ private route: ActivatedRoute,
1319
+ private markdownService: IntlayerMarkdownService
1320
+ ) {
1321
+ // 2. クライアント上で: AST を再解析せずに直接レンダリングします
1322
+ this.route.data.subscribe((data) => {
1323
+ this.renderedMarkdown = this.markdownService.renderMarkdown(
1324
+ data.markdownAst
1325
+ ) as string;
1326
+ });
1327
+ }
1328
+ }
1329
+ ```
1330
+
1331
+ </Tab>
1332
+ </Tabs>
1333
+
1334
+ このパターンにより、markdown の解析ロジックが完全にサーバー上で実行され、クライアント側の実行時間が大幅に削減され、初期ハイドレーション速度が向上します。
1335
+
1336
+ ## オプションリファレンス
1337
+
1338
+ これらのオプションは `MarkdownProvider`、`MarkdownRenderer`、`useMarkdownRenderer`、`renderMarkdown` に渡すことができます。
1339
+
1340
+ | Option | Type | Default | Description |
1341
+ | :-------------------- | :---------- | :------ | :--------------------------------------------------------------------------------------------- |
1342
+ | `forceBlock` | `boolean` | `false` | 出力をブロックレベル要素(例:`<div>`)でラップすることを強制します。 |
1343
+ | `forceInline` | `boolean` | `false` | 出力をインライン要素(例:`<span>`)でラップすることを強制します。 |
1344
+ | `tagfilter` | `boolean` | `true` | GitHub Tag Filter を有効にして、危険な HTML タグを削除することで、セキュリティを向上させます。 |
1345
+ | `preserveFrontmatter` | `boolean` | `false` | `true` の場合、Markdown 文字列の先頭にある frontmatter は削除されません。 |
1346
+ | `components` | `Overrides` | `{}` | HTML タグをカスタムコンポーネントにマップするオブジェクト(例:`{ h1: MyHeading }`)。 |
1347
+ | `wrapper` | `Component` | `null` | レンダリングされた Markdown をラップするカスタムコンポーネント。 |
1348
+ | `renderMarkdown` | `Function` | `null` | デフォルトの Markdown コンパイラを完全に置き換えるカスタムレンダリング関数。 |