@intlayer/docs 7.5.11 → 7.5.13

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 (417) hide show
  1. package/blog/ar/intlayer_with_i18next.md +0 -2
  2. package/blog/ar/intlayer_with_next-i18next.md +0 -2
  3. package/blog/ar/intlayer_with_react-i18next.md +0 -2
  4. package/blog/de/intlayer_with_i18next.md +0 -45
  5. package/blog/de/intlayer_with_next-i18next.md +0 -46
  6. package/blog/de/intlayer_with_react-i18next.md +0 -2
  7. package/blog/en/intlayer_with_i18next.md +0 -46
  8. package/blog/en/intlayer_with_next-i18next.md +0 -48
  9. package/blog/en/intlayer_with_next-intl.md +0 -44
  10. package/blog/en/intlayer_with_react-i18next.md +0 -44
  11. package/blog/en/intlayer_with_react-intl.md +0 -42
  12. package/blog/en/intlayer_with_vue-i18n.md +0 -44
  13. package/blog/en-GB/intlayer_with_i18next.md +0 -45
  14. package/blog/en-GB/intlayer_with_next-i18next.md +0 -47
  15. package/blog/en-GB/intlayer_with_next-intl.md +0 -42
  16. package/blog/en-GB/intlayer_with_react-i18next.md +0 -43
  17. package/blog/en-GB/intlayer_with_react-intl.md +0 -42
  18. package/blog/en-GB/intlayer_with_vue-i18n.md +0 -46
  19. package/blog/es/intlayer_with_i18next.md +0 -45
  20. package/blog/es/intlayer_with_next-i18next.md +0 -47
  21. package/blog/es/intlayer_with_next-intl.md +0 -42
  22. package/blog/es/intlayer_with_react-i18next.md +0 -43
  23. package/blog/es/intlayer_with_react-intl.md +0 -42
  24. package/blog/es/intlayer_with_vue-i18n.md +0 -46
  25. package/blog/fr/intlayer_with_i18next.md +0 -45
  26. package/blog/fr/intlayer_with_next-i18next.md +0 -47
  27. package/blog/fr/intlayer_with_next-intl.md +0 -42
  28. package/blog/fr/intlayer_with_react-i18next.md +0 -43
  29. package/blog/fr/intlayer_with_react-intl.md +0 -42
  30. package/blog/fr/intlayer_with_vue-i18n.md +0 -46
  31. package/blog/hi/intlayer_with_i18next.md +0 -2
  32. package/blog/hi/intlayer_with_next-i18next.md +0 -2
  33. package/blog/hi/intlayer_with_react-i18next.md +0 -2
  34. package/blog/id/intlayer_with_i18next.md +0 -2
  35. package/blog/id/intlayer_with_next-i18next.md +0 -2
  36. package/blog/id/intlayer_with_react-i18next.md +0 -2
  37. package/blog/it/intlayer_with_i18next.md +0 -2
  38. package/blog/it/intlayer_with_next-i18next.md +0 -2
  39. package/blog/it/intlayer_with_react-i18next.md +0 -2
  40. package/blog/ja/intlayer_with_i18next.md +0 -45
  41. package/blog/ja/intlayer_with_next-i18next.md +0 -46
  42. package/blog/ja/intlayer_with_next-intl.md +0 -42
  43. package/blog/ja/intlayer_with_react-i18next.md +0 -42
  44. package/blog/ja/intlayer_with_react-intl.md +0 -42
  45. package/blog/ja/intlayer_with_vue-i18n.md +0 -46
  46. package/blog/ko/intlayer_with_i18next.md +0 -2
  47. package/blog/ko/intlayer_with_next-i18next.md +0 -2
  48. package/blog/ko/intlayer_with_react-i18next.md +0 -1
  49. package/blog/pl/intlayer_with_i18next.md +0 -45
  50. package/blog/pl/intlayer_with_next-i18next.md +0 -46
  51. package/blog/pl/intlayer_with_next-intl.md +0 -42
  52. package/blog/pl/intlayer_with_react-i18next.md +0 -43
  53. package/blog/pl/intlayer_with_react-intl.md +0 -42
  54. package/blog/pl/intlayer_with_vue-i18n.md +0 -46
  55. package/blog/pt/intlayer_with_i18next.md +0 -2
  56. package/blog/pt/intlayer_with_next-i18next.md +0 -2
  57. package/blog/pt/intlayer_with_react-i18next.md +0 -2
  58. package/blog/ru/intlayer_with_i18next.md +0 -45
  59. package/blog/ru/intlayer_with_next-i18next.md +0 -47
  60. package/blog/ru/intlayer_with_next-intl.md +0 -42
  61. package/blog/ru/intlayer_with_react-i18next.md +0 -43
  62. package/blog/ru/intlayer_with_react-intl.md +0 -42
  63. package/blog/ru/intlayer_with_vue-i18n.md +0 -46
  64. package/blog/tr/intlayer_with_i18next.md +0 -2
  65. package/blog/tr/intlayer_with_next-i18next.md +0 -1
  66. package/blog/tr/intlayer_with_react-i18next.md +0 -2
  67. package/blog/uk/compiler_vs_declarative_i18n.md +224 -0
  68. package/blog/uk/i18n_using_next-i18next.md +1086 -0
  69. package/blog/uk/i18n_using_next-intl.md +760 -0
  70. package/blog/uk/index.md +69 -0
  71. package/blog/uk/internationalization_and_SEO.md +273 -0
  72. package/blog/uk/intlayer_with_i18next.md +211 -0
  73. package/blog/uk/intlayer_with_next-i18next.md +202 -0
  74. package/blog/uk/intlayer_with_next-intl.md +203 -0
  75. package/blog/uk/intlayer_with_react-i18next.md +200 -0
  76. package/blog/uk/intlayer_with_react-intl.md +202 -0
  77. package/blog/uk/intlayer_with_vue-i18n.md +206 -0
  78. package/blog/uk/l10n_platform_alternative/Lokalise.md +80 -0
  79. package/blog/uk/l10n_platform_alternative/crowdin.md +80 -0
  80. package/blog/uk/l10n_platform_alternative/phrase.md +78 -0
  81. package/blog/uk/list_i18n_technologies/CMS/drupal.md +143 -0
  82. package/blog/uk/list_i18n_technologies/CMS/wix.md +167 -0
  83. package/blog/uk/list_i18n_technologies/CMS/wordpress.md +189 -0
  84. package/blog/uk/list_i18n_technologies/frameworks/angular.md +125 -0
  85. package/blog/uk/list_i18n_technologies/frameworks/flutter.md +128 -0
  86. package/blog/uk/list_i18n_technologies/frameworks/react-native.md +217 -0
  87. package/blog/uk/list_i18n_technologies/frameworks/react.md +155 -0
  88. package/blog/uk/list_i18n_technologies/frameworks/svelte.md +145 -0
  89. package/blog/uk/list_i18n_technologies/frameworks/vue.md +144 -0
  90. package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +1499 -0
  91. package/blog/uk/nextjs-multilingual-seo-comparison.md +360 -0
  92. package/blog/uk/rag_powered_documentation_assistant.md +288 -0
  93. package/blog/uk/react-i18next_vs_react-intl_vs_intlayer.md +164 -0
  94. package/blog/uk/vue-i18n_vs_intlayer.md +279 -0
  95. package/blog/uk/what_is_internationalization.md +167 -0
  96. package/blog/vi/intlayer_with_i18next.md +0 -2
  97. package/blog/vi/intlayer_with_next-i18next.md +0 -2
  98. package/blog/vi/intlayer_with_react-i18next.md +0 -2
  99. package/blog/zh/intlayer_with_i18next.md +0 -2
  100. package/blog/zh/intlayer_with_next-i18next.md +0 -2
  101. package/blog/zh/intlayer_with_react-i18next.md +0 -2
  102. package/blog/zh/intlayer_with_vue-i18n.md +0 -46
  103. package/dist/cjs/generated/blog.entry.cjs +58 -29
  104. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  105. package/dist/cjs/generated/docs.entry.cjs +218 -99
  106. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  107. package/dist/cjs/generated/frequentQuestions.entry.cjs +50 -15
  108. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  109. package/dist/cjs/generated/legal.entry.cjs +4 -2
  110. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  111. package/dist/esm/generated/blog.entry.mjs +58 -29
  112. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  113. package/dist/esm/generated/docs.entry.mjs +218 -99
  114. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  115. package/dist/esm/generated/frequentQuestions.entry.mjs +50 -15
  116. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  117. package/dist/esm/generated/legal.entry.mjs +4 -2
  118. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  119. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  120. package/dist/types/generated/docs.entry.d.ts +1 -0
  121. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  122. package/dist/types/generated/frequentQuestions.entry.d.ts +1 -0
  123. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  124. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  125. package/docs/ar/configuration.md +6 -1
  126. package/docs/ar/dictionary/content_file.md +6 -1
  127. package/docs/ar/intlayer_with_next-i18next.md +0 -1
  128. package/docs/ar/intlayer_with_nextjs_14.md +28 -0
  129. package/docs/ar/intlayer_with_nextjs_15.md +28 -0
  130. package/docs/ar/intlayer_with_nextjs_16.md +28 -0
  131. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1159 -0
  132. package/docs/ar/plugins/sync-json.md +6 -2
  133. package/docs/de/configuration.md +6 -1
  134. package/docs/de/dictionary/content_file.md +6 -1
  135. package/docs/de/intlayer_with_next-i18next.md +0 -1
  136. package/docs/de/intlayer_with_nextjs_14.md +28 -0
  137. package/docs/de/intlayer_with_nextjs_15.md +28 -0
  138. package/docs/de/intlayer_with_nextjs_16.md +28 -0
  139. package/docs/de/intlayer_with_nextjs_no_locale_path.md +1152 -0
  140. package/docs/de/plugins/sync-json.md +6 -2
  141. package/docs/en/configuration.md +6 -1
  142. package/docs/en/dictionary/content_file.md +6 -1
  143. package/docs/en/intlayer_with_next-i18next.md +0 -1
  144. package/docs/en/intlayer_with_nextjs_14.md +28 -0
  145. package/docs/en/intlayer_with_nextjs_15.md +28 -0
  146. package/docs/en/intlayer_with_nextjs_16.md +31 -1
  147. package/docs/en/intlayer_with_nextjs_no_locale_path.md +1132 -0
  148. package/docs/en/plugins/sync-json.md +6 -2
  149. package/docs/en-GB/configuration.md +6 -1
  150. package/docs/en-GB/dictionary/content_file.md +3 -1
  151. package/docs/en-GB/intlayer_with_next-i18next.md +0 -1
  152. package/docs/en-GB/intlayer_with_nextjs_14.md +28 -0
  153. package/docs/en-GB/intlayer_with_nextjs_15.md +28 -0
  154. package/docs/en-GB/intlayer_with_nextjs_16.md +28 -0
  155. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1154 -0
  156. package/docs/en-GB/plugins/sync-json.md +6 -2
  157. package/docs/es/configuration.md +6 -1
  158. package/docs/es/dictionary/content_file.md +6 -1
  159. package/docs/es/intlayer_with_next-i18next.md +0 -1
  160. package/docs/es/intlayer_with_nextjs_14.md +28 -0
  161. package/docs/es/intlayer_with_nextjs_15.md +28 -0
  162. package/docs/es/intlayer_with_nextjs_16.md +28 -0
  163. package/docs/es/intlayer_with_nextjs_no_locale_path.md +1143 -0
  164. package/docs/es/plugins/sync-json.md +6 -2
  165. package/docs/fr/configuration.md +6 -1
  166. package/docs/fr/dictionary/content_file.md +3 -1
  167. package/docs/fr/intlayer_with_next-i18next.md +0 -1
  168. package/docs/fr/intlayer_with_nextjs_14.md +28 -0
  169. package/docs/fr/intlayer_with_nextjs_15.md +28 -0
  170. package/docs/fr/intlayer_with_nextjs_16.md +28 -0
  171. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1174 -0
  172. package/docs/fr/plugins/sync-json.md +9 -5
  173. package/docs/hi/configuration.md +6 -1
  174. package/docs/hi/dictionary/content_file.md +3 -1
  175. package/docs/hi/intlayer_with_next-i18next.md +0 -1
  176. package/docs/hi/intlayer_with_nextjs_14.md +28 -0
  177. package/docs/hi/intlayer_with_nextjs_15.md +28 -0
  178. package/docs/hi/intlayer_with_nextjs_16.md +28 -0
  179. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1151 -0
  180. package/docs/hi/plugins/sync-json.md +6 -2
  181. package/docs/id/configuration.md +6 -1
  182. package/docs/id/dictionary/content_file.md +3 -1
  183. package/docs/id/intlayer_with_next-i18next.md +0 -1
  184. package/docs/id/intlayer_with_nextjs_14.md +28 -0
  185. package/docs/id/intlayer_with_nextjs_15.md +28 -0
  186. package/docs/id/intlayer_with_nextjs_16.md +28 -0
  187. package/docs/id/intlayer_with_nextjs_no_locale_path.md +1154 -0
  188. package/docs/id/plugins/sync-json.md +6 -2
  189. package/docs/it/configuration.md +6 -1
  190. package/docs/it/dictionary/content_file.md +3 -1
  191. package/docs/it/intlayer_with_next-i18next.md +0 -1
  192. package/docs/it/intlayer_with_nextjs_14.md +28 -0
  193. package/docs/it/intlayer_with_nextjs_15.md +28 -0
  194. package/docs/it/intlayer_with_nextjs_16.md +28 -0
  195. package/docs/it/intlayer_with_nextjs_no_locale_path.md +1148 -0
  196. package/docs/it/plugins/sync-json.md +6 -2
  197. package/docs/ja/configuration.md +6 -1
  198. package/docs/ja/dictionary/content_file.md +3 -1
  199. package/docs/ja/intlayer_with_next-i18next.md +0 -1
  200. package/docs/ja/intlayer_with_nextjs_14.md +28 -0
  201. package/docs/ja/intlayer_with_nextjs_15.md +28 -0
  202. package/docs/ja/intlayer_with_nextjs_16.md +28 -0
  203. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1222 -0
  204. package/docs/ja/plugins/sync-json.md +6 -2
  205. package/docs/ko/configuration.md +6 -1
  206. package/docs/ko/dictionary/content_file.md +3 -1
  207. package/docs/ko/intlayer_with_next-i18next.md +0 -1
  208. package/docs/ko/intlayer_with_nextjs_14.md +28 -0
  209. package/docs/ko/intlayer_with_nextjs_15.md +28 -0
  210. package/docs/ko/intlayer_with_nextjs_16.md +28 -0
  211. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1205 -0
  212. package/docs/ko/plugins/sync-json.md +6 -2
  213. package/docs/pl/configuration.md +3 -1
  214. package/docs/pl/dictionary/content_file.md +3 -1
  215. package/docs/pl/intlayer_with_next-i18next.md +0 -1
  216. package/docs/pl/intlayer_with_nextjs_14.md +28 -0
  217. package/docs/pl/intlayer_with_nextjs_15.md +28 -0
  218. package/docs/pl/intlayer_with_nextjs_16.md +28 -0
  219. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1149 -0
  220. package/docs/pl/plugins/sync-json.md +6 -2
  221. package/docs/pt/configuration.md +6 -1
  222. package/docs/pt/dictionary/content_file.md +3 -1
  223. package/docs/pt/intlayer_with_next-i18next.md +0 -1
  224. package/docs/pt/intlayer_with_nextjs_14.md +28 -0
  225. package/docs/pt/intlayer_with_nextjs_15.md +28 -0
  226. package/docs/pt/intlayer_with_nextjs_16.md +28 -0
  227. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1152 -0
  228. package/docs/pt/plugins/sync-json.md +6 -2
  229. package/docs/ru/configuration.md +6 -1
  230. package/docs/ru/dictionary/content_file.md +6 -1
  231. package/docs/ru/intlayer_with_next-i18next.md +0 -1
  232. package/docs/ru/intlayer_with_nextjs_14.md +28 -0
  233. package/docs/ru/intlayer_with_nextjs_15.md +28 -0
  234. package/docs/ru/intlayer_with_nextjs_16.md +28 -0
  235. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1204 -0
  236. package/docs/ru/plugins/sync-json.md +6 -2
  237. package/docs/tr/configuration.md +6 -1
  238. package/docs/tr/dictionary/content_file.md +3 -1
  239. package/docs/tr/intlayer_with_next-i18next.md +0 -1
  240. package/docs/tr/intlayer_with_nextjs_14.md +28 -0
  241. package/docs/tr/intlayer_with_nextjs_15.md +28 -0
  242. package/docs/tr/intlayer_with_nextjs_16.md +28 -0
  243. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1159 -0
  244. package/docs/tr/plugins/sync-json.md +6 -2
  245. package/docs/uk/CI_CD.md +198 -0
  246. package/docs/uk/autoFill.md +307 -0
  247. package/docs/uk/bundle_optimization.md +185 -0
  248. package/docs/uk/cli/build.md +64 -0
  249. package/docs/uk/cli/ci.md +137 -0
  250. package/docs/uk/cli/configuration.md +63 -0
  251. package/docs/uk/cli/debug.md +46 -0
  252. package/docs/uk/cli/doc-review.md +43 -0
  253. package/docs/uk/cli/doc-translate.md +132 -0
  254. package/docs/uk/cli/editor.md +28 -0
  255. package/docs/uk/cli/fill.md +130 -0
  256. package/docs/uk/cli/index.md +190 -0
  257. package/docs/uk/cli/init.md +84 -0
  258. package/docs/uk/cli/list.md +90 -0
  259. package/docs/uk/cli/list_projects.md +128 -0
  260. package/docs/uk/cli/live.md +41 -0
  261. package/docs/uk/cli/login.md +157 -0
  262. package/docs/uk/cli/pull.md +78 -0
  263. package/docs/uk/cli/push.md +98 -0
  264. package/docs/uk/cli/sdk.md +71 -0
  265. package/docs/uk/cli/test.md +76 -0
  266. package/docs/uk/cli/transform.md +65 -0
  267. package/docs/uk/cli/version.md +24 -0
  268. package/docs/uk/cli/watch.md +37 -0
  269. package/docs/uk/compiler.md +133 -0
  270. package/docs/uk/component_i18n.md +194 -0
  271. package/docs/uk/configuration.md +742 -0
  272. package/docs/uk/dictionary/condition.md +237 -0
  273. package/docs/uk/dictionary/content_file.md +1134 -0
  274. package/docs/uk/dictionary/enumeration.md +245 -0
  275. package/docs/uk/dictionary/file.md +232 -0
  276. package/docs/uk/dictionary/function_fetching.md +212 -0
  277. package/docs/uk/dictionary/gender.md +273 -0
  278. package/docs/uk/dictionary/insertion.md +187 -0
  279. package/docs/uk/dictionary/markdown.md +383 -0
  280. package/docs/uk/dictionary/nesting.md +273 -0
  281. package/docs/uk/dictionary/translation.md +332 -0
  282. package/docs/uk/formatters.md +595 -0
  283. package/docs/uk/how_works_intlayer.md +256 -0
  284. package/docs/uk/index.md +175 -0
  285. package/docs/uk/interest_of_intlayer.md +297 -0
  286. package/docs/uk/intlayer_CMS.md +569 -0
  287. package/docs/uk/intlayer_visual_editor.md +292 -0
  288. package/docs/uk/intlayer_with_angular.md +710 -0
  289. package/docs/uk/intlayer_with_astro.md +256 -0
  290. package/docs/uk/intlayer_with_create_react_app.md +1258 -0
  291. package/docs/uk/intlayer_with_express.md +429 -0
  292. package/docs/uk/intlayer_with_fastify.md +446 -0
  293. package/docs/uk/intlayer_with_lynx+react.md +548 -0
  294. package/docs/uk/intlayer_with_nestjs.md +283 -0
  295. package/docs/uk/intlayer_with_next-i18next.md +640 -0
  296. package/docs/uk/intlayer_with_next-intl.md +456 -0
  297. package/docs/uk/intlayer_with_nextjs_14.md +1646 -0
  298. package/docs/uk/intlayer_with_nextjs_15.md +1910 -0
  299. package/docs/uk/intlayer_with_nextjs_16.md +1763 -0
  300. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1159 -0
  301. package/docs/uk/intlayer_with_nextjs_page_router.md +1541 -0
  302. package/docs/uk/intlayer_with_nuxt.md +711 -0
  303. package/docs/uk/intlayer_with_react_native+expo.md +715 -0
  304. package/docs/uk/intlayer_with_react_router_v7.md +600 -0
  305. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +669 -0
  306. package/docs/uk/intlayer_with_svelte_kit.md +579 -0
  307. package/docs/uk/intlayer_with_tanstack.md +818 -0
  308. package/docs/uk/intlayer_with_vite+preact.md +1748 -0
  309. package/docs/uk/intlayer_with_vite+react.md +1449 -0
  310. package/docs/uk/intlayer_with_vite+solid.md +302 -0
  311. package/docs/uk/intlayer_with_vite+svelte.md +520 -0
  312. package/docs/uk/intlayer_with_vite+vue.md +1113 -0
  313. package/docs/uk/introduction.md +222 -0
  314. package/docs/uk/locale_mapper.md +242 -0
  315. package/docs/uk/mcp_server.md +211 -0
  316. package/docs/uk/packages/express-intlayer/t.md +465 -0
  317. package/docs/uk/packages/intlayer/getConfiguration.md +145 -0
  318. package/docs/uk/packages/intlayer/getEnumeration.md +159 -0
  319. package/docs/uk/packages/intlayer/getHTMLTextDir.md +121 -0
  320. package/docs/uk/packages/intlayer/getLocaleLang.md +81 -0
  321. package/docs/uk/packages/intlayer/getLocaleName.md +135 -0
  322. package/docs/uk/packages/intlayer/getLocalizedUrl.md +338 -0
  323. package/docs/uk/packages/intlayer/getMultilingualUrls.md +359 -0
  324. package/docs/uk/packages/intlayer/getPathWithoutLocale.md +75 -0
  325. package/docs/uk/packages/intlayer/getPrefix.md +213 -0
  326. package/docs/uk/packages/intlayer/getTranslation.md +190 -0
  327. package/docs/uk/packages/intlayer/getTranslationContent.md +189 -0
  328. package/docs/uk/packages/next-intlayer/t.md +365 -0
  329. package/docs/uk/packages/next-intlayer/useDictionary.md +276 -0
  330. package/docs/uk/packages/next-intlayer/useIntlayer.md +263 -0
  331. package/docs/uk/packages/next-intlayer/useLocale.md +166 -0
  332. package/docs/uk/packages/react-intlayer/t.md +311 -0
  333. package/docs/uk/packages/react-intlayer/useDictionary.md +295 -0
  334. package/docs/uk/packages/react-intlayer/useI18n.md +250 -0
  335. package/docs/uk/packages/react-intlayer/useIntlayer.md +251 -0
  336. package/docs/uk/packages/react-intlayer/useLocale.md +210 -0
  337. package/docs/uk/per_locale_file.md +345 -0
  338. package/docs/uk/plugins/sync-json.md +398 -0
  339. package/docs/uk/readme.md +265 -0
  340. package/docs/uk/releases/v6.md +305 -0
  341. package/docs/uk/releases/v7.md +624 -0
  342. package/docs/uk/roadmap.md +346 -0
  343. package/docs/uk/testing.md +204 -0
  344. package/docs/uk/vs_code_extension.md +133 -0
  345. package/docs/vi/configuration.md +6 -1
  346. package/docs/vi/dictionary/content_file.md +6 -1
  347. package/docs/vi/intlayer_with_next-i18next.md +0 -1
  348. package/docs/vi/intlayer_with_nextjs_14.md +28 -0
  349. package/docs/vi/intlayer_with_nextjs_15.md +28 -0
  350. package/docs/vi/intlayer_with_nextjs_16.md +28 -0
  351. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1151 -0
  352. package/docs/vi/plugins/sync-json.md +6 -2
  353. package/docs/zh/configuration.md +6 -1
  354. package/docs/zh/dictionary/content_file.md +6 -1
  355. package/docs/zh/intlayer_with_next-i18next.md +0 -1
  356. package/docs/zh/intlayer_with_nextjs_14.md +28 -0
  357. package/docs/zh/intlayer_with_nextjs_15.md +28 -0
  358. package/docs/zh/intlayer_with_nextjs_16.md +28 -0
  359. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1206 -0
  360. package/docs/zh/plugins/sync-json.md +9 -5
  361. package/frequent_questions/ar/SSR_Next_no_[locale].md +1 -1
  362. package/frequent_questions/ar/error-vite-env-only.md +77 -0
  363. package/frequent_questions/de/SSR_Next_no_[locale].md +1 -1
  364. package/frequent_questions/de/error-vite-env-only.md +77 -0
  365. package/frequent_questions/en/SSR_Next_no_[locale].md +1 -1
  366. package/frequent_questions/en/error-vite-env-only.md +77 -0
  367. package/frequent_questions/en-GB/SSR_Next_no_[locale].md +1 -1
  368. package/frequent_questions/en-GB/error-vite-env-only.md +77 -0
  369. package/frequent_questions/es/SSR_Next_no_[locale].md +1 -1
  370. package/frequent_questions/es/error-vite-env-only.md +76 -0
  371. package/frequent_questions/fr/SSR_Next_no_[locale].md +1 -1
  372. package/frequent_questions/fr/error-vite-env-only.md +77 -0
  373. package/frequent_questions/hi/SSR_Next_no_[locale].md +1 -1
  374. package/frequent_questions/hi/error-vite-env-only.md +77 -0
  375. package/frequent_questions/id/SSR_Next_no_[locale].md +1 -1
  376. package/frequent_questions/id/error-vite-env-only.md +77 -0
  377. package/frequent_questions/it/SSR_Next_no_[locale].md +1 -1
  378. package/frequent_questions/it/error-vite-env-only.md +77 -0
  379. package/frequent_questions/ja/SSR_Next_no_[locale].md +1 -1
  380. package/frequent_questions/ja/error-vite-env-only.md +77 -0
  381. package/frequent_questions/ko/SSR_Next_no_[locale].md +1 -1
  382. package/frequent_questions/ko/error-vite-env-only.md +77 -0
  383. package/frequent_questions/pl/SSR_Next_no_[locale].md +1 -1
  384. package/frequent_questions/pl/error-vite-env-only.md +77 -0
  385. package/frequent_questions/pt/SSR_Next_no_[locale].md +1 -1
  386. package/frequent_questions/pt/error-vite-env-only.md +77 -0
  387. package/frequent_questions/ru/SSR_Next_no_[locale].md +1 -1
  388. package/frequent_questions/ru/error-vite-env-only.md +77 -0
  389. package/frequent_questions/tr/SSR_Next_no_[locale].md +1 -1
  390. package/frequent_questions/tr/error-vite-env-only.md +77 -0
  391. package/frequent_questions/uk/SSR_Next_no_[locale].md +104 -0
  392. package/frequent_questions/uk/array_as_content_declaration.md +72 -0
  393. package/frequent_questions/uk/build_dictionaries.md +58 -0
  394. package/frequent_questions/uk/build_error_CI_CD.md +74 -0
  395. package/frequent_questions/uk/bun_set_up.md +53 -0
  396. package/frequent_questions/uk/customized_locale_list.md +64 -0
  397. package/frequent_questions/uk/domain_routing.md +113 -0
  398. package/frequent_questions/uk/error-vite-env-only.md +77 -0
  399. package/frequent_questions/uk/esbuild_error.md +29 -0
  400. package/frequent_questions/uk/get_locale_cookie.md +142 -0
  401. package/frequent_questions/uk/intlayer_command_undefined.md +155 -0
  402. package/frequent_questions/uk/locale_incorect_in_url.md +73 -0
  403. package/frequent_questions/uk/package_version_error.md +181 -0
  404. package/frequent_questions/uk/static_rendering.md +44 -0
  405. package/frequent_questions/uk/translated_path_url.md +55 -0
  406. package/frequent_questions/uk/unknown_command.md +97 -0
  407. package/frequent_questions/vi/SSR_Next_no_[locale].md +1 -1
  408. package/frequent_questions/vi/error-vite-env-only.md +77 -0
  409. package/frequent_questions/zh/SSR_Next_no_[locale].md +1 -1
  410. package/frequent_questions/zh/error-vite-env-only.md +77 -0
  411. package/legal/uk/privacy_notice.md +83 -0
  412. package/legal/uk/terms_of_service.md +55 -0
  413. package/package.json +6 -6
  414. package/src/generated/blog.entry.ts +29 -0
  415. package/src/generated/docs.entry.ts +119 -0
  416. package/src/generated/frequentQuestions.entry.ts +35 -0
  417. package/src/generated/legal.entry.ts +2 -0
@@ -0,0 +1,338 @@
1
+ ---
2
+ createdAt: 2025-08-23
3
+ updatedAt: 2025-11-16
4
+ title: Документація функції getLocalizedUrl | intlayer
5
+ description: Дізнайтеся, як використовувати функцію getLocalizedUrl у пакеті intlayer
6
+ keywords:
7
+ - getLocalizedUrl
8
+ - переклад
9
+ - Intlayer
10
+ - intlayer
11
+ - Інтернаціоналізація
12
+ - Документація
13
+ - Next.js
14
+ - JavaScript
15
+ - React
16
+ slugs:
17
+ - doc
18
+ - packages
19
+ - intlayer
20
+ - getLocalizedUrl
21
+ history:
22
+ - version: 7.1.0
23
+ date: 2025-11-16
24
+ changes: Рефакторинг: використання параметра options з полем mode замість prefixDefault
25
+ - version: 5.5.10
26
+ date: 2025-06-29
27
+ changes: Ініціалізація історії
28
+ ---
29
+
30
+ # Документація: функція `getLocalizedUrl` у `intlayer`
31
+
32
+ ## Опис
33
+
34
+ Функція `getLocalizedUrl` генерує локалізований URL, додаючи префікс з вказаною локаллю до переданого URL. Вона обробляє як абсолютні, так і відносні URL, гарантуючи застосування правильного локалізаційного префікса відповідно до конфігурації.
35
+
36
+ **Ключові особливості:**
37
+
38
+ - Потрібні лише 2 параметри: `url` та `currentLocale`
39
+ - Необов'язковий об'єкт `options` з полями `locales`, `defaultLocale` та `mode`
40
+ - Використовує конфігурацію інтернаціоналізації вашого проекту як значення за замовчуванням
41
+ - Може використовуватись з мінімальною кількістю параметрів для простих випадків або бути повністю налаштована для складніших сценаріїв
42
+ - Підтримує кілька режимів маршрутизації: `prefix-no-default`, `prefix-all`, `no-prefix` та `search-params`
43
+
44
+ ---
45
+
46
+ ## Підпис функції
47
+
48
+ ```typescript
49
+ getLocalizedUrl(
50
+ url: string, // Обов'язковий
51
+ currentLocale: Locales, // Обов'язковий
52
+ options?: { // Необов'язковий
53
+ locales?: Locales[];
54
+ defaultLocale?: Locales;
55
+ mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params';
56
+ }
57
+ ): string
58
+ ```
59
+
60
+ ---
61
+
62
+ ## Параметри
63
+
64
+ ### Обов'язкові параметри
65
+
66
+ - `url: string`
67
+ - **Опис**: Початковий рядок URL, якому буде додано префікс локалі.
68
+ - **Тип**: `string`
69
+ - **Обов'язковий**: Так
70
+
71
+ - `currentLocale: Locales`
72
+ - **Опис**: Поточна локаль, для якої локалізується URL.
73
+ - **Тип**: `Locales`
74
+ - **Обов'язковий**: Так
75
+
76
+ ### Необов'язкові параметри
77
+
78
+ - `options?: object`
79
+ - **Опис**: Об'єкт конфігурації для поведінки локалізації URL.
80
+ - **Тип**: `object`
81
+ - **Обов'язковий**: Ні (Необов'язковий)
82
+
83
+ - `options.locales?: Locales[]`
84
+ - `options.locales?: Locales[]`
85
+ - **Description**: Масив підтримуваних локалей. Якщо не вказано, використовуються локалі, налаштовані у конфігурації вашого проєкту.
86
+ - **Type**: `Locales[]`
87
+ - **Default**: [`Конфігурація проєкту`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md#middleware)
88
+
89
+ - `options.defaultLocale?: Locales`
90
+ - **Description**: Локаль за замовчуванням для застосунку. Якщо не вказано, використовується локаль за замовчуванням, налаштована у конфігурації вашого проєкту.
91
+ - **Type**: `Locales`
92
+ - **Default**: [`Конфігурація проєкту`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md#middleware)
93
+
94
+ - `options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'`
95
+ - **Опис**: Режим маршрутизації URL для обробки локалі. Якщо не вказано, використовується режим, налаштований у конфігурації проєкту.
96
+ - **Тип**: `'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'`
97
+ - **За замовчуванням**: [`Конфігурація проєкту`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md#middleware)
98
+ - **Режими**:
99
+ - `prefix-no-default`: Без префіксу для локалі за замовчуванням, префікс для всіх інших
100
+ - `prefix-all`: Префікс для всіх локалей, включаючи локаль за замовчуванням
101
+ - `no-prefix`: Відсутність префіксу локалі в URL
102
+ - `search-params`: Використовувати параметри запиту для локалі (наприклад, `?locale=fr`)
103
+
104
+ ### Повертає
105
+
106
+ - **Тип**: `string`
107
+ - **Опис**: Локалізований URL для вказаної локалі.
108
+
109
+ ---
110
+
111
+ ## Приклад використання
112
+
113
+ ### Основне використання (тільки обов'язкові параметри)
114
+
115
+ Коли ви налаштували свій проєкт з параметрами інтернаціоналізації, ви можете використовувати цю функцію, передавши лише обов'язкові параметри:
116
+
117
+ ```typescript codeFormat="typescript"
118
+ import { getLocalizedUrl, Locales } from "intlayer";
119
+
120
+ // Використовує налаштування вашого проєкту для locales, defaultLocale та mode
121
+ getLocalizedUrl("/about", Locales.FRENCH);
122
+ // Вихід: "/fr/about" (за умови, що французька підтримується і режим 'prefix-no-default')
123
+
124
+ getLocalizedUrl("/about", Locales.ENGLISH);
125
+ // Вихід: "/about" або "/en/about" (залежно від налаштування режиму)
126
+ ```
127
+
128
+ ```javascript codeFormat="esm"
129
+ import { getLocalizedUrl, Locales } from "intlayer";
130
+
131
+ // Використовує налаштування вашого проєкту
132
+ getLocalizedUrl("/about", Locales.FRENCH);
133
+ // Вихід: "/fr/about"
134
+ ```
135
+
136
+ ```javascript codeFormat="commonjs"
137
+ const { getLocalizedUrl, Locales } = require("intlayer");
138
+
139
+ // Використовує конфігурацію вашого проєкту
140
+ getLocalizedUrl("/about", Locales.FRENCH);
141
+ // Вивід: "/fr/about"
142
+ ```
143
+
144
+ ### Розширене використання (з необов'язковими параметрами)
145
+
146
+ Ви можете перевизначити конфігурацію за замовчуванням, передавши необов'язковий параметр `options`:
147
+
148
+ ### Відносні URL (вказано всі параметри)
149
+
150
+ ```typescript codeFormat="typescript"
151
+ import { getLocalizedUrl, Locales } from "intlayer";
152
+
153
+ // Явно вказуємо всі необов'язкові параметри
154
+ getLocalizedUrl("/about", Locales.FRENCH, {
155
+ locales: [Locales.ENGLISH, Locales.FRENCH],
156
+ defaultLocale: Locales.ENGLISH,
157
+ mode: "prefix-no-default",
158
+ });
159
+ // Вивід: "/fr/about" для французької локалі
160
+
161
+ getLocalizedUrl("/about", Locales.ENGLISH, {
162
+ locales: [Locales.ENGLISH, Locales.FRENCH],
163
+ defaultLocale: Locales.ENGLISH,
164
+ mode: "prefix-no-default",
165
+ });
166
+ // Вивід: "/about" для мови за замовчуванням (English)
167
+ ```
168
+
169
+ ```javascript codeFormat="esm"
170
+ import { getLocalizedUrl, Locales } from "intlayer";
171
+
172
+ // Явне вказання всіх необов'язкових параметрів
173
+ getLocalizedUrl("/about", Locales.FRENCH, {
174
+ locales: [Locales.ENGLISH, Locales.FRENCH],
175
+ defaultLocale: Locales.ENGLISH,
176
+ mode: "prefix-no-default",
177
+ });
178
+ // Вивід: "/fr/about" для французької локалі
179
+ ```
180
+
181
+ ```javascript codeFormat="commonjs"
182
+ const { getLocalizedUrl, Locales } = require("intlayer");
183
+
184
+ // Явне вказання всіх необов'язкових параметрів
185
+ getLocalizedUrl("/about", Locales.FRENCH, {
186
+ locales: [Locales.ENGLISH, Locales.FRENCH],
187
+ defaultLocale: Locales.ENGLISH,
188
+ mode: "prefix-no-default",
189
+ });
190
+ // Вивід: "/fr/about" для французької локалі
191
+ ```
192
+
193
+ ### Часткове перевизначення конфігурації
194
+
195
+ Ви також можете вказати лише деякі з необов'язкових параметрів. Функція використовуватиме конфігурацію вашого проєкту для параметрів, які ви не вкажете:
196
+
197
+ ```typescript codeFormat="typescript"
198
+ import { getLocalizedUrl, Locales } from "intlayer";
199
+
200
+ // Перевизначити лише locales, використати конфіг проєкту для defaultLocale та mode
201
+ getLocalizedUrl("/about", Locales.SPANISH, {
202
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
203
+ });
204
+
205
+ // Перевизначити лише mode, використати конфіг проєкту для locales та defaultLocale
206
+ getLocalizedUrl("/about", Locales.ENGLISH, {
207
+ mode: "prefix-all", // Примусово додавати префікс для всіх локалей, включно зі значенням за замовчуванням
208
+ });
209
+
210
+ // Перевизначити кілька опцій
211
+ getLocalizedUrl("/about", Locales.FRENCH, {
212
+ defaultLocale: Locales.ENGLISH,
213
+ mode: "search-params", // Використати параметри запиту: /about?locale=fr
214
+ });
215
+ ```
216
+
217
+ ### Абсолютні URL-адреси
218
+
219
+ ```typescript
220
+ getLocalizedUrl("https://example.com/about", Locales.FRENCH, {
221
+ locales: [Locales.ENGLISH, Locales.FRENCH],
222
+ defaultLocale: Locales.ENGLISH,
223
+ mode: "prefix-no-default",
224
+ });
225
+ // Вивід: "https://example.com/fr/about" для французької локалі
226
+
227
+ getLocalizedUrl("https://example.com/about", Locales.ENGLISH, {
228
+ locales: [Locales.ENGLISH, Locales.FRENCH],
229
+ defaultLocale: Locales.ENGLISH,
230
+ mode: "prefix-no-default",
231
+ });
232
+ // Вивід: "https://example.com/about" для англійської (без префікса для мови за замовчуванням)
233
+
234
+ getLocalizedUrl("https://example.com/about", Locales.ENGLISH, {
235
+ locales: [Locales.ENGLISH, Locales.FRENCH],
236
+ defaultLocale: Locales.ENGLISH,
237
+ mode: "prefix-all",
238
+ });
239
+ // Вивід: "https://example.com/en/about" для англійської (префікс для всіх)
240
+
241
+ getLocalizedUrl("https://example.com/about", Locales.FRENCH, {
242
+ locales: [Locales.ENGLISH, Locales.FRENCH],
243
+ defaultLocale: Locales.ENGLISH,
244
+ mode: "search-params",
245
+ });
246
+ // Вивід: "https://example.com/about?locale=fr" (використовуючи параметри запиту)
247
+ ```
248
+
249
+ ### Непідтримувана локаль
250
+
251
+ ```typescript
252
+ getLocalizedUrl("/about", Locales.ITALIAN, {
253
+ locales: [Locales.ENGLISH, Locales.FRENCH],
254
+ defaultLocale: Locales.ENGLISH,
255
+ mode: "prefix-no-default",
256
+ });
257
+ // Вивід: "/about" (жодного префікса не застосовано для непідтримуваної локалі)
258
+ ```
259
+
260
+ ---
261
+
262
+ ## Особливі випадки
263
+
264
+ - **Відсутній сегмент локалі:**
265
+ - Якщо URL не містить сегмента локалі, функція коректно додає відповідну локаль як префікс залежно від режиму маршрутизації.
266
+
267
+ - **Локаль за замовчуванням:**
268
+ - Якщо `mode` дорівнює `'prefix-no-default'`, функція не додає префікс до URL для локалі за замовчуванням.
269
+ - Якщо `mode` дорівнює `'prefix-all'`, функція додає префікси для всіх локалей, включаючи локаль за замовчуванням.
270
+
271
+ - **Непідтримувані локалі:**
272
+ - Для локалей, які не перелічені в `locales`, функція не застосовує жодного префіксу.
273
+
274
+ - **Режими маршрутизації:**
275
+ - `'prefix-no-default'`: локаль за замовчуванням без префікса, інші мають префікс (наприклад, `/about`, `/fr/about`)
276
+ - `'prefix-all'`: всі локалі мають префікси (наприклад, `/en/about`, `/fr/about`)
277
+ - `'no-prefix'`: префіксів локалі у URL немає (локаль обробляється в іншому місці)
278
+ - `'search-params'`: Локаль вказується через параметр запиту (наприклад, `/about?locale=fr`)
279
+
280
+ ---
281
+
282
+ ## Використання у застосунках
283
+
284
+ У багатомовному застосунку конфігурація налаштувань інтернаціоналізації через `locales` та `defaultLocale` є критичною для забезпечення відображення правильної мови. Нижче наведено приклад того, як `getLocalizedUrl` можна використовувати в налаштуванні застосунку:
285
+
286
+ ```tsx codeFormat="typescript"
287
+ import { Locales, type IntlayerConfig } from "intlayer";
288
+
289
+ // Конфігурація для підтримуваних локалей та локалі за замовчуванням
290
+ export default {
291
+ internationalization: {
292
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
293
+ defaultLocale: Locales.ENGLISH,
294
+ },
295
+ } satisfies IntlayerConfig;
296
+
297
+ export default config;
298
+ ```
299
+
300
+ ```javascript codeFormat="esm"
301
+ import { Locales } from "intlayer";
302
+
303
+ /** @type {import('intlayer').IntlayerConfig} */
304
+ const config = {
305
+ internationalization: {
306
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
307
+ defaultLocale: Locales.ENGLISH,
308
+ },
309
+ };
310
+
311
+ export default config;
312
+ ```
313
+
314
+ ```javascript codeFormat="commonjs"
315
+ const { Locales } = require("intlayer");
316
+
317
+ /** @type {import('intlayer').IntlayerConfig} */
318
+ const config = {
319
+ internationalization: {
320
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
321
+ defaultLocale: Locales.ENGLISH,
322
+ },
323
+ };
324
+
325
+ module.exports = config;
326
+ ```
327
+
328
+ Вищенаведена конфігурація гарантує, що застосунок розпізнає `ENGLISH`, `FRENCH` і `SPANISH` як підтримувані мови та використовує `ENGLISH` як мову за замовчуванням.
329
+
330
+ За цією конфігурацією функція `getLocalizedUrl` може динамічно створювати локалізовані URL-адреси залежно від мовних налаштувань користувача:
331
+
332
+ ```typescript
333
+ getLocalizedUrl("/about", Locales.FRENCH); // Вивід: "/fr/about"
334
+ getLocalizedUrl("/about", Locales.SPANISH); // Вивід: "/es/about"
335
+ getLocalizedUrl("/about", Locales.ENGLISH); // Вивід: "/about"
336
+ ```
337
+
338
+ Інтегруючи `getLocalizedUrl`, розробники можуть зберігати узгоджену структуру URL-адрес у кількох мовах, покращуючи як зручність для користувачів, так і SEO.