@intlayer/docs 5.8.1 → 6.0.0-canary.1

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 (378) hide show
  1. package/blog/ar/rag_powered_documentation_assistant.md +282 -0
  2. package/blog/de/rag_powered_documentation_assistant.md +282 -0
  3. package/blog/en/rag_powered_documentation_assistant.md +289 -0
  4. package/blog/en-GB/rag_powered_documentation_assistant.md +284 -0
  5. package/blog/es/rag_powered_documentation_assistant.md +308 -0
  6. package/blog/fr/rag_powered_documentation_assistant.md +308 -0
  7. package/blog/hi/rag_powered_documentation_assistant.md +284 -0
  8. package/blog/it/rag_powered_documentation_assistant.md +284 -0
  9. package/blog/ja/rag_powered_documentation_assistant.md +284 -0
  10. package/blog/ko/rag_powered_documentation_assistant.md +283 -0
  11. package/blog/pt/rag_powered_documentation_assistant.md +284 -0
  12. package/blog/ru/rag_powered_documentation_assistant.md +284 -0
  13. package/blog/tr/index.md +69 -0
  14. package/blog/tr/internationalization_and_SEO.md +273 -0
  15. package/blog/tr/intlayer_with_i18next.md +162 -0
  16. package/blog/tr/intlayer_with_next-i18next.md +367 -0
  17. package/blog/tr/intlayer_with_next-intl.md +392 -0
  18. package/blog/tr/intlayer_with_react-i18next.md +346 -0
  19. package/blog/tr/intlayer_with_react-intl.md +345 -0
  20. package/blog/tr/list_i18n_technologies/CMS/drupal.md +143 -0
  21. package/blog/tr/list_i18n_technologies/CMS/wix.md +167 -0
  22. package/blog/tr/list_i18n_technologies/CMS/wordpress.md +188 -0
  23. package/blog/tr/list_i18n_technologies/frameworks/angular.md +125 -0
  24. package/blog/tr/list_i18n_technologies/frameworks/flutter.md +150 -0
  25. package/blog/tr/list_i18n_technologies/frameworks/react-native.md +217 -0
  26. package/blog/tr/list_i18n_technologies/frameworks/react.md +155 -0
  27. package/blog/tr/list_i18n_technologies/frameworks/svelte.md +129 -0
  28. package/blog/tr/list_i18n_technologies/frameworks/vue.md +130 -0
  29. package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +170 -0
  30. package/blog/tr/rag_powered_documentation_assistant.md +284 -0
  31. package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +162 -0
  32. package/blog/tr/vue-i18n_vs_intlayer.md +276 -0
  33. package/blog/tr/what_is_internationalization.md +166 -0
  34. package/blog/zh/rag_powered_documentation_assistant.md +284 -0
  35. package/dist/cjs/generated/blog.entry.cjs +212 -0
  36. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  37. package/dist/cjs/generated/docs.entry.cjs +660 -132
  38. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  39. package/dist/cjs/generated/frequentQuestions.entry.cjs +84 -0
  40. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  41. package/dist/cjs/generated/legal.entry.cjs +6 -0
  42. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  43. package/dist/esm/generated/blog.entry.mjs +212 -0
  44. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  45. package/dist/esm/generated/docs.entry.mjs +660 -132
  46. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  47. package/dist/esm/generated/frequentQuestions.entry.mjs +84 -0
  48. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  49. package/dist/esm/generated/legal.entry.mjs +6 -0
  50. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  51. package/dist/types/generated/blog.entry.d.ts +1 -0
  52. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  53. package/dist/types/generated/docs.entry.d.ts +5 -2
  54. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  55. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  56. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  57. package/docs/ar/autoFill.md +41 -40
  58. package/docs/ar/configuration.md +202 -199
  59. package/docs/ar/dictionary/content_file.md +1059 -0
  60. package/docs/ar/intlayer_CMS.md +4 -4
  61. package/docs/ar/intlayer_with_nestjs.md +271 -0
  62. package/docs/ar/intlayer_with_nextjs_page_router.md +1 -1
  63. package/docs/ar/intlayer_with_react_router_v7.md +533 -0
  64. package/docs/ar/intlayer_with_tanstack.md +465 -299
  65. package/docs/ar/intlayer_with_vite+preact.md +7 -7
  66. package/docs/ar/intlayer_with_vite+react.md +7 -7
  67. package/docs/ar/intlayer_with_vite+vue.md +9 -9
  68. package/docs/ar/packages/vite-intlayer/index.md +3 -3
  69. package/docs/ar/readme.md +261 -0
  70. package/docs/ar/testing.md +199 -0
  71. package/docs/de/autoFill.md +42 -19
  72. package/docs/de/configuration.md +155 -147
  73. package/docs/de/dictionary/content_file.md +1059 -0
  74. package/docs/de/intlayer_CMS.md +4 -5
  75. package/docs/de/intlayer_with_nestjs.md +270 -0
  76. package/docs/de/intlayer_with_nextjs_page_router.md +1 -1
  77. package/docs/de/intlayer_with_react_router_v7.md +537 -0
  78. package/docs/de/intlayer_with_tanstack.md +469 -302
  79. package/docs/de/intlayer_with_vite+preact.md +7 -7
  80. package/docs/de/intlayer_with_vite+react.md +7 -7
  81. package/docs/de/intlayer_with_vite+vue.md +9 -9
  82. package/docs/de/packages/vite-intlayer/index.md +3 -3
  83. package/docs/de/readme.md +261 -0
  84. package/docs/de/testing.md +200 -0
  85. package/docs/en/CI_CD.md +4 -6
  86. package/docs/en/autoFill.md +25 -5
  87. package/docs/en/configuration.md +45 -54
  88. package/docs/en/dictionary/content_file.md +1054 -0
  89. package/docs/en/intlayer_CMS.md +8 -7
  90. package/docs/en/intlayer_cli.md +112 -5
  91. package/docs/en/intlayer_with_nestjs.md +268 -0
  92. package/docs/en/intlayer_with_nextjs_page_router.md +1 -1
  93. package/docs/en/intlayer_with_react_router_v7.md +531 -0
  94. package/docs/en/intlayer_with_tanstack.md +463 -294
  95. package/docs/en/intlayer_with_vite+preact.md +8 -8
  96. package/docs/en/intlayer_with_vite+react.md +8 -8
  97. package/docs/en/intlayer_with_vite+vue.md +8 -8
  98. package/docs/en/packages/intlayer/getLocalizedUrl.md +102 -25
  99. package/docs/en/packages/vite-intlayer/index.md +3 -3
  100. package/docs/en/readme.md +261 -0
  101. package/docs/en/testing.md +200 -0
  102. package/docs/en-GB/autoFill.md +29 -6
  103. package/docs/en-GB/configuration.md +79 -71
  104. package/docs/en-GB/dictionary/content_file.md +1084 -0
  105. package/docs/en-GB/intlayer_CMS.md +4 -5
  106. package/docs/en-GB/intlayer_with_nestjs.md +268 -0
  107. package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
  108. package/docs/en-GB/intlayer_with_react_router_v7.md +533 -0
  109. package/docs/en-GB/intlayer_with_tanstack.md +466 -299
  110. package/docs/en-GB/intlayer_with_vite+preact.md +7 -7
  111. package/docs/en-GB/intlayer_with_vite+react.md +7 -7
  112. package/docs/en-GB/intlayer_with_vite+vue.md +9 -9
  113. package/docs/en-GB/packages/vite-intlayer/index.md +3 -3
  114. package/docs/en-GB/readme.md +261 -0
  115. package/docs/en-GB/testing.md +200 -0
  116. package/docs/es/autoFill.md +45 -23
  117. package/docs/es/configuration.md +171 -167
  118. package/docs/es/dictionary/content_file.md +1088 -0
  119. package/docs/es/intlayer_CMS.md +4 -5
  120. package/docs/es/intlayer_with_nestjs.md +268 -0
  121. package/docs/es/intlayer_with_nextjs_page_router.md +1 -1
  122. package/docs/es/intlayer_with_react_router_v7.md +533 -0
  123. package/docs/es/intlayer_with_tanstack.md +469 -280
  124. package/docs/es/intlayer_with_vite+preact.md +7 -7
  125. package/docs/es/intlayer_with_vite+react.md +7 -7
  126. package/docs/es/intlayer_with_vite+vue.md +9 -9
  127. package/docs/es/packages/vite-intlayer/index.md +3 -3
  128. package/docs/es/readme.md +261 -0
  129. package/docs/es/testing.md +200 -0
  130. package/docs/fr/autoFill.md +47 -24
  131. package/docs/fr/configuration.md +213 -198
  132. package/docs/fr/dictionary/content_file.md +1054 -0
  133. package/docs/fr/intlayer_CMS.md +4 -5
  134. package/docs/fr/intlayer_with_nestjs.md +268 -0
  135. package/docs/fr/intlayer_with_nextjs_page_router.md +1 -1
  136. package/docs/fr/intlayer_with_react_router_v7.md +549 -0
  137. package/docs/fr/intlayer_with_tanstack.md +465 -279
  138. package/docs/fr/intlayer_with_vite+preact.md +7 -7
  139. package/docs/fr/intlayer_with_vite+react.md +7 -7
  140. package/docs/fr/intlayer_with_vite+vue.md +9 -9
  141. package/docs/fr/packages/vite-intlayer/index.md +3 -3
  142. package/docs/fr/readme.md +261 -0
  143. package/docs/fr/testing.md +200 -0
  144. package/docs/hi/autoFill.md +47 -25
  145. package/docs/hi/configuration.md +194 -189
  146. package/docs/hi/dictionary/content_file.md +1056 -0
  147. package/docs/hi/intlayer_CMS.md +4 -5
  148. package/docs/hi/intlayer_with_nestjs.md +269 -0
  149. package/docs/hi/intlayer_with_nextjs_page_router.md +1 -1
  150. package/docs/hi/intlayer_with_react_router_v7.md +533 -0
  151. package/docs/hi/intlayer_with_tanstack.md +467 -282
  152. package/docs/hi/intlayer_with_vite+preact.md +7 -7
  153. package/docs/hi/intlayer_with_vite+react.md +7 -7
  154. package/docs/hi/intlayer_with_vite+vue.md +9 -9
  155. package/docs/hi/packages/vite-intlayer/index.md +3 -3
  156. package/docs/hi/readme.md +261 -0
  157. package/docs/hi/testing.md +200 -0
  158. package/docs/it/autoFill.md +46 -24
  159. package/docs/it/configuration.md +169 -161
  160. package/docs/it/dictionary/content_file.md +1061 -0
  161. package/docs/it/intlayer_CMS.md +4 -5
  162. package/docs/it/intlayer_with_nestjs.md +268 -0
  163. package/docs/it/intlayer_with_nextjs_page_router.md +1 -1
  164. package/docs/it/intlayer_with_react_router_v7.md +535 -0
  165. package/docs/it/intlayer_with_tanstack.md +467 -301
  166. package/docs/it/intlayer_with_vite+preact.md +7 -7
  167. package/docs/it/intlayer_with_vite+react.md +7 -7
  168. package/docs/it/intlayer_with_vite+vue.md +9 -9
  169. package/docs/it/packages/vite-intlayer/index.md +3 -3
  170. package/docs/it/readme.md +261 -0
  171. package/docs/it/testing.md +200 -0
  172. package/docs/ja/autoFill.md +45 -23
  173. package/docs/ja/configuration.md +243 -204
  174. package/docs/ja/dictionary/content_file.md +1064 -0
  175. package/docs/ja/intlayer_CMS.md +4 -5
  176. package/docs/ja/intlayer_with_nestjs.md +268 -0
  177. package/docs/ja/intlayer_with_nextjs_page_router.md +1 -1
  178. package/docs/ja/intlayer_with_react_router_v7.md +534 -0
  179. package/docs/ja/intlayer_with_tanstack.md +467 -303
  180. package/docs/ja/intlayer_with_vite+preact.md +7 -7
  181. package/docs/ja/intlayer_with_vite+react.md +7 -7
  182. package/docs/ja/intlayer_with_vite+vue.md +9 -9
  183. package/docs/ja/packages/vite-intlayer/index.md +3 -3
  184. package/docs/ja/readme.md +263 -0
  185. package/docs/ja/testing.md +200 -0
  186. package/docs/ko/autoFill.md +39 -16
  187. package/docs/ko/configuration.md +217 -197
  188. package/docs/ko/dictionary/content_file.md +1060 -0
  189. package/docs/ko/intlayer_CMS.md +4 -5
  190. package/docs/ko/intlayer_with_nestjs.md +268 -0
  191. package/docs/ko/intlayer_with_nextjs_page_router.md +1 -1
  192. package/docs/ko/intlayer_with_react_router_v7.md +540 -0
  193. package/docs/ko/intlayer_with_tanstack.md +466 -302
  194. package/docs/ko/intlayer_with_vite+preact.md +7 -7
  195. package/docs/ko/intlayer_with_vite+react.md +7 -7
  196. package/docs/ko/intlayer_with_vite+vue.md +9 -9
  197. package/docs/ko/packages/vite-intlayer/index.md +3 -3
  198. package/docs/ko/readme.md +261 -0
  199. package/docs/ko/testing.md +200 -0
  200. package/docs/pt/autoFill.md +39 -15
  201. package/docs/pt/configuration.md +165 -147
  202. package/docs/pt/dictionary/content_file.md +1062 -0
  203. package/docs/pt/intlayer_CMS.md +4 -5
  204. package/docs/pt/intlayer_with_nestjs.md +271 -0
  205. package/docs/pt/intlayer_with_nextjs_page_router.md +1 -1
  206. package/docs/pt/intlayer_with_react_router_v7.md +535 -0
  207. package/docs/pt/intlayer_with_tanstack.md +469 -300
  208. package/docs/pt/intlayer_with_vite+preact.md +7 -7
  209. package/docs/pt/intlayer_with_vite+react.md +7 -7
  210. package/docs/pt/intlayer_with_vite+vue.md +9 -9
  211. package/docs/pt/packages/vite-intlayer/index.md +3 -3
  212. package/docs/pt/readme.md +261 -0
  213. package/docs/pt/testing.md +200 -0
  214. package/docs/ru/autoFill.md +52 -30
  215. package/docs/ru/configuration.md +164 -117
  216. package/docs/ru/dictionary/content_file.md +1064 -0
  217. package/docs/ru/intlayer_CMS.md +4 -4
  218. package/docs/ru/intlayer_with_nestjs.md +270 -0
  219. package/docs/ru/intlayer_with_nextjs_page_router.md +1 -1
  220. package/docs/ru/intlayer_with_react_router_v7.md +534 -0
  221. package/docs/ru/intlayer_with_tanstack.md +470 -305
  222. package/docs/ru/intlayer_with_vite+preact.md +7 -7
  223. package/docs/ru/intlayer_with_vite+react.md +7 -7
  224. package/docs/ru/intlayer_with_vite+vue.md +9 -9
  225. package/docs/ru/packages/vite-intlayer/index.md +3 -3
  226. package/docs/ru/readme.md +261 -0
  227. package/docs/ru/testing.md +202 -0
  228. package/docs/tr/CI_CD.md +198 -0
  229. package/docs/tr/autoFill.md +201 -0
  230. package/docs/tr/configuration.md +585 -0
  231. package/docs/tr/dictionary/condition.md +243 -0
  232. package/docs/tr/dictionary/content_file.md +1055 -0
  233. package/docs/tr/dictionary/enumeration.md +251 -0
  234. package/docs/tr/dictionary/file.md +228 -0
  235. package/docs/tr/dictionary/function_fetching.md +218 -0
  236. package/docs/tr/dictionary/gender.md +279 -0
  237. package/docs/tr/dictionary/insertion.md +191 -0
  238. package/docs/tr/dictionary/markdown.md +385 -0
  239. package/docs/tr/dictionary/nesting.md +279 -0
  240. package/docs/tr/dictionary/translation.md +315 -0
  241. package/docs/tr/formatters.md +618 -0
  242. package/docs/tr/how_works_intlayer.md +254 -0
  243. package/docs/tr/index.md +168 -0
  244. package/docs/tr/interest_of_intlayer.md +288 -0
  245. package/docs/tr/intlayer_CMS.md +347 -0
  246. package/docs/tr/intlayer_cli.md +570 -0
  247. package/docs/tr/intlayer_visual_editor.md +269 -0
  248. package/docs/tr/intlayer_with_angular.md +694 -0
  249. package/docs/tr/intlayer_with_create_react_app.md +1218 -0
  250. package/docs/tr/intlayer_with_express.md +415 -0
  251. package/docs/tr/intlayer_with_lynx+react.md +511 -0
  252. package/docs/tr/intlayer_with_nestjs.md +268 -0
  253. package/docs/tr/intlayer_with_nextjs_14.md +1029 -0
  254. package/docs/tr/intlayer_with_nextjs_15.md +1506 -0
  255. package/docs/tr/intlayer_with_nextjs_page_router.md +1484 -0
  256. package/docs/tr/intlayer_with_nuxt.md +773 -0
  257. package/docs/tr/intlayer_with_react_native+expo.md +660 -0
  258. package/docs/tr/intlayer_with_react_router_v7.md +531 -0
  259. package/docs/tr/intlayer_with_tanstack.md +452 -0
  260. package/docs/tr/intlayer_with_vite+preact.md +1673 -0
  261. package/docs/tr/intlayer_with_vite+react.md +1632 -0
  262. package/docs/tr/intlayer_with_vite+solid.md +288 -0
  263. package/docs/tr/intlayer_with_vite+svelte.md +288 -0
  264. package/docs/tr/intlayer_with_vite+vue.md +1042 -0
  265. package/docs/tr/introduction.md +209 -0
  266. package/docs/tr/locale_mapper.md +244 -0
  267. package/docs/tr/mcp_server.md +207 -0
  268. package/docs/tr/packages/@intlayer/api/index.md +58 -0
  269. package/docs/tr/packages/@intlayer/chokidar/index.md +57 -0
  270. package/docs/tr/packages/@intlayer/cli/index.md +47 -0
  271. package/docs/tr/packages/@intlayer/config/index.md +142 -0
  272. package/docs/tr/packages/@intlayer/core/index.md +51 -0
  273. package/docs/tr/packages/@intlayer/design-system/index.md +47 -0
  274. package/docs/tr/packages/@intlayer/dictionary-entry/index.md +53 -0
  275. package/docs/tr/packages/@intlayer/editor/index.md +47 -0
  276. package/docs/tr/packages/@intlayer/editor-react/index.md +47 -0
  277. package/docs/tr/packages/@intlayer/webpack/index.md +61 -0
  278. package/docs/tr/packages/angular-intlayer/index.md +59 -0
  279. package/docs/tr/packages/express-intlayer/index.md +258 -0
  280. package/docs/tr/packages/express-intlayer/t.md +459 -0
  281. package/docs/tr/packages/intlayer/getConfiguration.md +151 -0
  282. package/docs/tr/packages/intlayer/getEnumeration.md +165 -0
  283. package/docs/tr/packages/intlayer/getHTMLTextDir.md +127 -0
  284. package/docs/tr/packages/intlayer/getLocaleLang.md +87 -0
  285. package/docs/tr/packages/intlayer/getLocaleName.md +124 -0
  286. package/docs/tr/packages/intlayer/getLocalizedUrl.md +324 -0
  287. package/docs/tr/packages/intlayer/getMultilingualUrls.md +225 -0
  288. package/docs/tr/packages/intlayer/getPathWithoutLocale.md +81 -0
  289. package/docs/tr/packages/intlayer/getTranslation.md +196 -0
  290. package/docs/tr/packages/intlayer/getTranslationContent.md +195 -0
  291. package/docs/tr/packages/intlayer/index.md +505 -0
  292. package/docs/tr/packages/intlayer-cli/index.md +71 -0
  293. package/docs/tr/packages/intlayer-editor/index.md +139 -0
  294. package/docs/tr/packages/lynx-intlayer/index.md +85 -0
  295. package/docs/tr/packages/next-intlayer/index.md +154 -0
  296. package/docs/tr/packages/next-intlayer/t.md +354 -0
  297. package/docs/tr/packages/next-intlayer/useDictionary.md +270 -0
  298. package/docs/tr/packages/next-intlayer/useIntlayer.md +265 -0
  299. package/docs/tr/packages/next-intlayer/useLocale.md +133 -0
  300. package/docs/tr/packages/nuxt-intlayer/index.md +59 -0
  301. package/docs/tr/packages/preact-intlayer/index.md +55 -0
  302. package/docs/tr/packages/react-intlayer/index.md +148 -0
  303. package/docs/tr/packages/react-intlayer/t.md +304 -0
  304. package/docs/tr/packages/react-intlayer/useDictionary.md +554 -0
  305. package/docs/tr/packages/react-intlayer/useI18n.md +478 -0
  306. package/docs/tr/packages/react-intlayer/useIntlayer.md +253 -0
  307. package/docs/tr/packages/react-intlayer/useLocale.md +212 -0
  308. package/docs/tr/packages/react-native-intlayer/index.md +85 -0
  309. package/docs/tr/packages/react-scripts-intlayer/index.md +82 -0
  310. package/docs/tr/packages/solid-intlayer/index.md +56 -0
  311. package/docs/tr/packages/svelte-intlayer/index.md +55 -0
  312. package/docs/tr/packages/vite-intlayer/index.md +82 -0
  313. package/docs/tr/packages/vue-intlayer/index.md +59 -0
  314. package/docs/tr/per_locale_file.md +321 -0
  315. package/docs/tr/readme.md +261 -0
  316. package/docs/tr/roadmap.md +338 -0
  317. package/docs/tr/testing.md +200 -0
  318. package/docs/tr/vs_code_extension.md +154 -0
  319. package/docs/zh/autoFill.md +40 -18
  320. package/docs/zh/configuration.md +245 -226
  321. package/docs/zh/dictionary/content_file.md +1064 -0
  322. package/docs/zh/intlayer_CMS.md +4 -5
  323. package/docs/zh/intlayer_with_nestjs.md +268 -0
  324. package/docs/zh/intlayer_with_nextjs_page_router.md +1 -1
  325. package/docs/zh/intlayer_with_react_router_v7.md +535 -0
  326. package/docs/zh/intlayer_with_tanstack.md +468 -278
  327. package/docs/zh/intlayer_with_vite+preact.md +7 -7
  328. package/docs/zh/intlayer_with_vite+react.md +7 -7
  329. package/docs/zh/intlayer_with_vite+vue.md +7 -7
  330. package/docs/zh/packages/vite-intlayer/index.md +3 -3
  331. package/docs/zh/readme.md +261 -0
  332. package/docs/zh/testing.md +198 -0
  333. package/frequent_questions/tr/SSR_Next_no_[locale].md +105 -0
  334. package/frequent_questions/tr/array_as_content_declaration.md +72 -0
  335. package/frequent_questions/tr/build_dictionaries.md +59 -0
  336. package/frequent_questions/tr/build_error_CI_CD.md +75 -0
  337. package/frequent_questions/tr/customized_locale_list.md +65 -0
  338. package/frequent_questions/tr/domain_routing.md +114 -0
  339. package/frequent_questions/tr/esbuild_error.md +30 -0
  340. package/frequent_questions/tr/get_locale_cookie.md +142 -0
  341. package/frequent_questions/tr/intlayer_command_undefined.md +156 -0
  342. package/frequent_questions/tr/locale_incorect_in_url.md +74 -0
  343. package/frequent_questions/tr/static_rendering.md +45 -0
  344. package/frequent_questions/tr/translated_path_url.md +56 -0
  345. package/frequent_questions/tr/unknown_command.md +98 -0
  346. package/legal/tr/privacy_notice.md +83 -0
  347. package/legal/tr/terms_of_service.md +55 -0
  348. package/package.json +12 -12
  349. package/src/generated/blog.entry.ts +212 -0
  350. package/src/generated/docs.entry.ts +663 -135
  351. package/src/generated/frequentQuestions.entry.ts +85 -1
  352. package/src/generated/legal.entry.ts +7 -1
  353. package/docs/ar/dictionary/content_extention_customization.md +0 -100
  354. package/docs/ar/dictionary/get_started.md +0 -527
  355. package/docs/de/dictionary/content_extention_customization.md +0 -100
  356. package/docs/de/dictionary/get_started.md +0 -531
  357. package/docs/en/dictionary/content_extention_customization.md +0 -102
  358. package/docs/en/dictionary/get_started.md +0 -529
  359. package/docs/en-GB/dictionary/content_extention_customization.md +0 -100
  360. package/docs/en-GB/dictionary/get_started.md +0 -591
  361. package/docs/es/dictionary/content_extention_customization.md +0 -100
  362. package/docs/es/dictionary/get_started.md +0 -527
  363. package/docs/fr/dictionary/content_extention_customization.md +0 -100
  364. package/docs/fr/dictionary/get_started.md +0 -527
  365. package/docs/hi/dictionary/content_extention_customization.md +0 -100
  366. package/docs/hi/dictionary/get_started.md +0 -527
  367. package/docs/it/dictionary/content_extention_customization.md +0 -113
  368. package/docs/it/dictionary/get_started.md +0 -573
  369. package/docs/ja/dictionary/content_extention_customization.md +0 -113
  370. package/docs/ja/dictionary/get_started.md +0 -576
  371. package/docs/ko/dictionary/content_extention_customization.md +0 -100
  372. package/docs/ko/dictionary/get_started.md +0 -530
  373. package/docs/pt/dictionary/content_extention_customization.md +0 -100
  374. package/docs/pt/dictionary/get_started.md +0 -532
  375. package/docs/ru/dictionary/content_extention_customization.md +0 -100
  376. package/docs/ru/dictionary/get_started.md +0 -575
  377. package/docs/zh/dictionary/content_extention_customization.md +0 -117
  378. package/docs/zh/dictionary/get_started.md +0 -533
@@ -0,0 +1,105 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: Next.js ile `[locale]` olmadan Intlayer kullanmak mümkün mü?
5
+ description: Next.js ile `[locale]` olmadan Intlayer nasıl kullanılır, öğrenin.
6
+ keywords:
7
+ - locale
8
+ - yol
9
+ - intlayer
10
+ - next.js
11
+ - vite
12
+ - framework
13
+ - middleware
14
+ - yapılandırma
15
+ - prefixDefault
16
+ - noPrefix
17
+ slugs:
18
+ - doc
19
+ - faq
20
+ - ssr-next-no-[locale]
21
+ ---
22
+
23
+ # Next.js ile `[locale]` olmadan Intlayer kullanmak mümkün mü?
24
+
25
+ Evet, Next.js ile `[locale]` olmadan Intlayer kullanmak mümkündür. Ancak, sayfalarınızı bölmek arama motorlarında daha fazla anahtar kelime tetiklenmesini sağlar ve SSR performansınız etkilenebilir.
26
+
27
+ Bunu yapmak isterseniz, [Intlayer ile Next.js](https://intlayer.org/doc/environment/nextjs) rehberinde anlatılan adımları izleyin:
28
+
29
+ - `src/middleware.ts` dosyası yok
30
+ - `generateStaticParams` yok
31
+
32
+ ```tsx fileName="src/app/layout.tsx"
33
+ import type { FC, PropsWithChildren } from "react";
34
+
35
+ const LocaleLayout: FC<PropsWithChildren> = ({ children }) => (
36
+ <html lang={undefined} dir={undefined}>
37
+ <body className={inter.className}>{children}</body>
38
+ </html>
39
+ );
40
+
41
+ export default LocaleLayout;
42
+ ```
43
+
44
+ ```tsx fileName="src/app/page.tsx"
45
+ import type { FC } from "react";
46
+ import { ClientComponentExample } from "@components/ClientComponentExample";
47
+ import { ServerComponentExample } from "@components/ServerComponentExample";
48
+ import { PageContent } from "@components/pageContent";
49
+ import { type NextPageIntlayer, IntlayerClientProvider } from "next-intlayer";
50
+ import { IntlayerServerProvider } from "next-intlayer/server";
51
+
52
+ const Page: FC = () => {
53
+ return (
54
+ <IntlayerServerProvider>
55
+ <PageContent />
56
+ <ServerComponentExample />
57
+
58
+ <IntlayerClientProvider>
59
+ <ClientComponentExample />
60
+ </IntlayerClientProvider>
61
+ </IntlayerServerProvider>
62
+ );
63
+ };
64
+
65
+ export default Page;
66
+ ```
67
+
68
+ ```tsx fileName="src/component/pageContent.ts"
69
+ "use client";
70
+
71
+ import { type FC } from "react";
72
+ import { useIntlayer } from "next-intlayer";
73
+ import { useHTMLLanguage } from "@hooks/htmlTextDir";
74
+
75
+ const PageContent: FC = () => {
76
+ useHTMLLanguage();
77
+ const content = useIntlayer("page");
78
+
79
+ return (
80
+ <>
81
+ <p>{content.getStarted.main}</p>
82
+ <code>{content.getStarted.pageLink}</code>
83
+ </>
84
+ );
85
+ };
86
+ ```
87
+
88
+ ```tsx fileName="src/hooks/htmlTextDir.ts"
89
+ "use client";
90
+
91
+ import { useEffect } from "react";
92
+ import { getHTMLTextDir } from "intlayer";
93
+ import { useLocale } from "next-intlayer";
94
+
95
+ export const useHTMLLanguage = () => {
96
+ const { locale } = useLocale();
97
+
98
+ useEffect(() => {
99
+ if (!document) return;
100
+
101
+ document.documentElement.lang = locale;
102
+ document.documentElement.dir = getHTMLTextDir(locale);
103
+ }, [locale]);
104
+ };
105
+ ```
@@ -0,0 +1,72 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: İçerik bildirimi olarak dizi kullanabilir miyim?
5
+ description: İçerik bildirimi olarak dizi nasıl kullanılır, öğrenin.
6
+ keywords:
7
+ - dizi
8
+ - içerik
9
+ - bildirim
10
+ - intlayer
11
+ slugs:
12
+ - doc
13
+ - faq
14
+ - array-as-content-declaration
15
+ ---
16
+
17
+ # İçerik bildirimi olarak dizi kullanabilir miyim?
18
+
19
+ Evet, içerik bildirimi olarak bir dizi kullanabilirsiniz.
20
+
21
+ ```ts
22
+ import { t, type Dictionary } from "intlayer";
23
+
24
+ const ornekIcerik = {
25
+ key: "ornek",
26
+ content: {
27
+ test: t({
28
+ en: ["Test", "Test2", "Test3"],
29
+ fr: ["Test", "Test2", "Test3"],
30
+ es: ["Test", "Test2", "Test3"],
31
+ }),
32
+ },
33
+ };
34
+
35
+ export default ornekIcerik;
36
+ ```
37
+
38
+ Daha sonra içeriği şu şekilde kullanabilirsiniz:
39
+
40
+ ```tsx
41
+ import { useIntlayer } from "react-intlayer";
42
+
43
+ const Ornek = () => {
44
+ const content = useIntlayer("ornek");
45
+
46
+ return (
47
+ <div>
48
+ {content.test.map((item) => (
49
+ <div key={item.value}>{item}</div>
50
+ ))}
51
+ </div>
52
+ );
53
+ };
54
+ ```
55
+
56
+ ```vue
57
+ <script setup lang="ts">
58
+ import { useIntlayer } from "vue-intlayer";
59
+
60
+ const content = useIntlayer("ornek");
61
+ </script>
62
+
63
+ <template>
64
+ <div>
65
+ <div v-for="item in content.test" :key="item.value">
66
+ {{ item }}
67
+ </div>
68
+ </div>
69
+ </template>
70
+ ```
71
+
72
+ `.value` ile, içeriğin IntlayerNode ile sarmalanmamış gerçek değerini alabilirsiniz.
@@ -0,0 +1,59 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: Sözlükler nasıl oluşturulur?
5
+ description: Sözlüklerin nasıl oluşturulacağını öğrenin.
6
+ keywords:
7
+ - oluştur
8
+ - sözlük
9
+ - intlayer
10
+ - komut
11
+ - izleme
12
+ - vscode
13
+ - eklenti
14
+ - framework
15
+ - next.js
16
+ - vite
17
+ slugs:
18
+ - doc
19
+ - faq
20
+ - build-dictionaries
21
+ ---
22
+
23
+ # Sözlükleri Oluşturma
24
+
25
+ ## Sözlükler Nasıl Oluşturulur
26
+
27
+ Intlayer, sözlükleri oluşturmak için bir komut satırı aracı sağlar.
28
+
29
+ ```bash
30
+ npx intlayer dictionaries build
31
+ ```
32
+
33
+ Bu komut:
34
+
35
+ - Projenizdeki tüm içerik bildirim dosyalarını (`.content.{ts,tsx,js,mjs,cjs,json,...}`) tarar.
36
+ - Sözlükleri oluşturur ve `.intlayer/dictionary` klasörüne kaydeder.
37
+
38
+ ### İzleme Modu
39
+
40
+ İçerik bildirim dosyalarında değişiklik yapıldığında sözlüklerin otomatik olarak güncellenmesini istiyorsanız, aşağıdaki komutu çalıştırın:
41
+
42
+ ```bash
43
+ npx intlayer dictionaries build --watch
44
+ ```
45
+
46
+ Bu modda, Intlayer içerik bildirim dosyalarında değişiklik olduğunda sözlükleri tarar ve `.intlayer/dictionary` klasörünü otomatik olarak günceller.
47
+
48
+ ### VSCode eklentisini kullanma
49
+
50
+ [Intlayer VSCode eklentisini](https://github.com/aymericzip/intlayer/tree/main/docs/en/vs_code_extension.md) kullanarak Intlayer deneyiminizi VSCode'da geliştirebilirsiniz.
51
+
52
+ ### Favori uygulama framework'ünüz için eklenti kullanma
53
+
54
+ Next.js (Webpack / Turbopack), Vite veya React Native, Lynx gibi bir framework kullanıyorsanız, Intlayer uygulamanıza entegre etmek için bir eklenti sunar.
55
+
56
+ Intlayer, uygulamanızın derlemesinden önce sözlükleri oluşturur.
57
+ Aynı şekilde, geliştirme modunda içerik bildirim dosyalarındaki değişiklikleri izler ve sözlükleri otomatik olarak yeniden oluşturur.
58
+
59
+ Eklentiyi entegre etmek için kullandığınız framework'ün özel dokümantasyonuna bakın.
@@ -0,0 +1,75 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: CI/CD'de Derleme Hatası
5
+ description: CI/CD ortamlarında oluşan derleme hatalarını nasıl düzelteceğinizi öğrenin.
6
+ keywords:
7
+ - derleme
8
+ - hata
9
+ - ci
10
+ - cd
11
+ - pipeline
12
+ - intlayer
13
+ - sözlük
14
+ - next.js
15
+ - ön-derleme
16
+ - otomasyon
17
+ slugs:
18
+ - doc
19
+ - faq
20
+ - build-error-ci-cd
21
+ ---
22
+
23
+ # CI/CD'de Derleme Hatası
24
+
25
+ Eğer Next.js'de aşağıdaki gibi bir hata alırsanız:
26
+
27
+ ```text
28
+ Error: An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error
29
+ ```
30
+
31
+ İşte bazı çözümler:
32
+
33
+ ## 1. Eksik sözlükler
34
+
35
+ Derleme aşamasında sözlüklerin oluşturulduğundan emin olun.
36
+
37
+ Genellikle derleme yerelde çalışırken CI/CD'de çalışmaz. Bunun nedeni, yerelde `.intlayer` klasörünün mevcut olması, ancak CI/CD'de derlemeye dahil edilmemesidir.
38
+
39
+ Bunu, projenizin `package.json` dosyasına bir ön-derleme (prebuild) script'i ekleyerek çözebilirsiniz.
40
+
41
+ ```json5 fileName=package.json
42
+ {
43
+ // ...
44
+ "scripts": {
45
+ "prebuild": "npx intlayer dictionaries build", // Derlemeden önce çalışır
46
+ "build": "next build",
47
+ },
48
+ }
49
+ ```
50
+
51
+ > Eğer `withIntlayer` fonksiyonunu veya framework'ünüz için eşdeğer paketleyici eklentisini kullanıyorsanız, ön-derleme script'i derlemeden önce çalışacaktır.
52
+
53
+ ## 2. Derleme/çalışma zamanında eksik ortam değişkenleri
54
+
55
+ Bir konteynerde veya otomatik dağıtım platformunda, `.env` dosyasını derlemeden hariç tutmanız önerilir.
56
+
57
+ ```text fileName=".gitignore veya .dockerignore"
58
+ # Ortam değişkenleri
59
+ .env
60
+ **/.env
61
+ .env.*
62
+ **/.env.*
63
+ ```
64
+
65
+ Ortam değişkenleriniz derleme sırasında mevcut değilse, hata alırsınız.
66
+
67
+ ```ts
68
+ import { Metadata } from "next";
69
+
70
+ export const generateMetadata = async ({ params }): Promise<Metadata> => ({
71
+ metadataBase: new URL(process.env.NEXT_PUBLIC_URL),
72
+ });
73
+ ```
74
+
75
+ Bu muhtemelen Intlayer ile ilgili değildir. Bu yüzden CI/CD platformunuzda derleme sırasında ortam değişkenlerinizi kontrol edin.
@@ -0,0 +1,65 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: Dil listesi nasıl özelleştirilir?
5
+ description: Dil listesini nasıl özelleştireceğinizi öğrenin.
6
+ keywords:
7
+ - diller
8
+ - liste
9
+ - intlayer
10
+ - yapılandırma
11
+ - availableLocales
12
+ - defaultLocale
13
+ - useLocale
14
+ - hook
15
+ - locale
16
+ - list
17
+ slugs:
18
+ - doc
19
+ - faq
20
+ - customized-locale-list
21
+ ---
22
+
23
+ # İngilizce gibi bir dil tipini engellemek mümkün mü? Sözlüklerime İngilizce ekliyorum ama henüz sitede İngilizceyi aktif etmek istemiyorum
24
+
25
+ Evet, İngilizce gibi bir dili `availableLocales` seçeneğiyle engelleyebilirsiniz.
26
+
27
+ ```ts
28
+ import { IntlayerConfig } from "intlayer";
29
+
30
+ const config: IntlayerConfig = {
31
+ locales: [Locales.FRENCH, Locales.SPANISH, Locales.ENGLISH],
32
+ availableLocales: [Locales.FRENCH, Locales.SPANISH],
33
+ defaultLocale: Locales.FRENCH,
34
+ };
35
+ ```
36
+
37
+ veya
38
+
39
+ ```ts
40
+ import { IntlayerConfig } from "intlayer";
41
+
42
+ const locales = [Locales.FRENCH, Locales.SPANISH, Locales.ENGLISH];
43
+
44
+ const config: IntlayerConfig = {
45
+ locales,
46
+ availableLocales: locales.filter((locale) => locale !== Locales.ENGLISH),
47
+ defaultLocale: Locales.FRENCH,
48
+ };
49
+ ```
50
+
51
+ Bu yapılandırma, `t()` fonksiyonunuzun tiplerini sadece kullanılabilir dillerle sınırlar.
52
+
53
+ `availableLocales` isteğe bağlıdır, belirtmezseniz tüm diller kullanılabilir olur.
54
+
55
+ Dikkat: `availableLocales`'a eklediğiniz tüm diller, `locales` içinde de olmalıdır.
56
+
57
+ Eğer `useLocale` hook'unu kullanırsanız, `availableLocales` seçeneği dil listesini belirler.
58
+
59
+ ```ts
60
+ import { useLocale } from "intlayer";
61
+
62
+ const { availableLocales } = useLocale();
63
+
64
+ console.log(availableLocales); // [Locales.FRENCH, Locales.SPANISH]
65
+ ```
@@ -0,0 +1,114 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: Alan adına göre yönlendirme nasıl yapılır?
5
+ description: Alan adına göre yönlendirme nasıl yapılır, öğrenin.
6
+ keywords:
7
+ - alan adı
8
+ - yönlendirme
9
+ - intlayer
10
+ - yapılandırma
11
+ - middleware
12
+ - react-router
13
+ - vue-router
14
+ - next.js
15
+ - vite
16
+ - framework
17
+ slugs:
18
+ - doc
19
+ - faq
20
+ - domain-routing
21
+ ---
22
+
23
+ # Intlayer ile **alan adına göre yönlendirme** nasıl yapılandırılır? `/[locale]/` yolları yerine
24
+
25
+ ## Kısa cevap
26
+
27
+ Alan adına göre yönlendirme, yol tabanlı yönlendirmeden (`example.com/[locale]/`) daha basittir çünkü tüm middleware ve yönlendirme yapılandırmasını atlayabilirsiniz. Sadece uygulamanızı her dil için ayrı bir domaine dağıtın ve her domain için bir ortam değişkeni ayarlayın.
28
+
29
+ ## Adım adım
30
+
31
+ 1. **Her domain için ayrı dağıtım yapın** (`example.com`, `exemple.fr`, `ejemplo.es`, ...).
32
+ 2. Her dağıtımda, o domainin hangi dili sunacağını belirten `LOCALE` (ve diğer Intlayer ortam değişkenlerini) ayarlayın.
33
+ 3. Bu değişkeni `intlayer.config.[ts|js]` dosyanızda `defaultLocale` olarak kullanın.
34
+
35
+ ```ts
36
+ import { Locales, type IntlayerConfig } from "intlayer";
37
+
38
+ const config: IntlayerConfig = {
39
+ internationalization: {
40
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
41
+ defaultLocale: process.env.LOCALE, // 👈 domain dili belirler
42
+ },
43
+ // ... diğer ayarlar
44
+ };
45
+
46
+ export default config;
47
+ ```
48
+
49
+ Bu kadar! **Next.js**, **Vite + React**, **Vite + Vue** vb. için aynıdır.
50
+
51
+ ## Tüm domainler **aynı** dağıtıma yönleniyorsa?
52
+
53
+ Tüm domainler aynı uygulama paketine yönleniyorsa, host'u çalışma zamanında tespit edip locale'i sağlayıcıya manuel iletmeniz gerekir.
54
+
55
+ ### Next.js için
56
+
57
+ ```tsx
58
+ // src/IntlayerProvider.tsx
59
+ import {
60
+ IntlayerClientProvider,
61
+ type IntlayerClientProviderProps,
62
+ } from "next-intlayer";
63
+ import { IntlayerServerProvider } from "next-intlayer/server";
64
+ import type { FC } from "react";
65
+
66
+ export const IntlayerProvider: FC<IntlayerClientProviderProps> = ({
67
+ children,
68
+ locale,
69
+ }) => {
70
+ const resolvedLocale = locale ?? getLocaleFromHostname();
71
+ return (
72
+ <IntlayerServerProvider locale={resolvedLocale}>
73
+ <IntlayerClientProvider locale={resolvedLocale}>
74
+ {children}
75
+ </IntlayerClientProvider>
76
+ </IntlayerServerProvider>
77
+ );
78
+ };
79
+ ```
80
+
81
+ ### Vue için
82
+
83
+ ```ts
84
+ import { createApp } from "vue";
85
+ import { installIntlayer } from "vue-intlayer";
86
+ import App from "./App.vue";
87
+ import { router } from "./routes";
88
+
89
+ const app = createApp(App);
90
+ app.use(router);
91
+ installIntlayer(app, getLocaleFromHostname());
92
+ app.mount("#app");
93
+ ```
94
+
95
+ `getLocaleFromHostname()` fonksiyonunu kendi domain tespit mantığınızla değiştirin.
96
+
97
+ ## Dil değiştirici güncelleyin
98
+
99
+ Alan adına göre yönlendirme kullanırken, dil değiştirmek başka bir domaine gitmek anlamına gelir:
100
+
101
+ ```ts
102
+ const { locale } = useLocale();
103
+
104
+ function changeLanguage(target: Locale) {
105
+ window.location.href = domainForLocale[target];
106
+ }
107
+ ```
108
+
109
+ ## Alan adına göre yönlendirmenin avantajları
110
+
111
+ 1. **Daha basit yapılandırma**: `intlayerMiddleware`, `generateStaticParams`, `react-router` veya `vue-router` yapılandırmaya gerek yok
112
+ 2. **Daha iyi SEO**: Her dilin kendi domaini olur
113
+ 3. **Daha temiz URL'ler**: Yolda dil öneki yok
114
+ 4. **Daha kolay bakım**: Her dil dağıtımı bağımsızdır
@@ -0,0 +1,30 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: ESBuild Hatası
5
+ description: ESBuild hatalarını nasıl düzelteceğinizi öğrenin.
6
+ keywords:
7
+ - esbuild
8
+ - hata
9
+ - intlayer
10
+ - eklenti
11
+ - framework
12
+ - next.js
13
+ - vite
14
+ - react-native
15
+ - lynx
16
+ slugs:
17
+ - doc
18
+ - faq
19
+ - esbuild-error
20
+ ---
21
+
22
+ # ESBuild Hatası
23
+
24
+ Derleme sırasında bir ESBuild hatası ile karşılaşırsanız, muhtemelen Intlayer eklentisi doğru yapılandırılmamıştır.
25
+
26
+ ESBuild, içerik bildirim dosyalarını (`.content.{ts,js,mjs,cjs,json}`) okuyup ilgili sözlükleri `.intlayer/dictionary` klasöründe oluşturmakla sorumludur. Ayrıca yapılandırma dosyasını (`intlayer.config.ts`) da okur.
27
+
28
+ Intlayer, paketleyicilerinizle entegre olabilmeniz için eklentiler sağlar. Sunucu tarafında çalışması gereken bileşenleri ayırmak için tasarlanmıştır.
29
+
30
+ Next.js (Webpack / Turbopack), Vite veya React Native, Lynx gibi bir framework kullanıyorsanız, Intlayer uygulamanıza entegre etmek için bir eklenti sunar. Eklentiyi entegre etmek için kullandığınız framework'ün özel dokümantasyonuna bakın.
@@ -0,0 +1,142 @@
1
+ ---
2
+ createdAt: 2025-09-07
3
+ updatedAt: 2025-09-07
4
+ title: Çerezlerden / başlıklardan locale nasıl alınır?
5
+ description: Çerezlerden / başlıklardan locale nasıl alınır, öğrenin.
6
+ keywords:
7
+ - çerez
8
+ - başlık
9
+ - intlayer
10
+ - locale
11
+ - hook
12
+ - useLocale
13
+ - useLocaleCookie
14
+ - next.js
15
+ - react-intlayer
16
+ - vue-intlayer
17
+ slugs:
18
+ - doc
19
+ - faq
20
+ - get-locale-cookie
21
+ ---
22
+
23
+ # Çerezlerden / başlıklardan locale nasıl alınır
24
+
25
+ ## Hook Kullanımı (Önerilen)
26
+
27
+ Çoğu kullanım için, mevcut locale'i otomatik olarak çözen `useLocale` hook'unu kullanmanız önerilir. Bu, Vue.js'deki `useLocale` composable ile benzer şekilde çalışır.
28
+
29
+ ```ts
30
+ import { useLocale } from "next-intlayer";
31
+ // veya import { useLocale } from "react-intlayer";
32
+ // veya import { useLocale } from "vue-intlayer";
33
+
34
+ // İstemci tarafı kullanım
35
+ const { locale } = useLocale();
36
+ ```
37
+
38
+ Sunucu bileşenleri için şuradan içe aktarabilirsiniz:
39
+
40
+ ```tsx
41
+ import { useLocale } from "next-intlayer/server";
42
+
43
+ const Test = () => {
44
+ const { locale } = useLocale();
45
+ return <>{locale}</>;
46
+ };
47
+
48
+ const Page = async ({ params }) => {
49
+ const { locale } = await params;
50
+
51
+ return (
52
+ <IntlayerServerProvider locale={locale}>
53
+ <Test />
54
+ </IntlayerServerProvider>
55
+ );
56
+ };
57
+ ```
58
+
59
+ Sadece çerez değerini çözen bir `useLocaleCookie` hook'u da vardır.
60
+
61
+ ## Manuel Çerez Yapılandırması
62
+
63
+ Özel çerez adı tanımlayabilirsiniz:
64
+
65
+ ```ts
66
+ import { type IntlayerConfig } from "intlayer";
67
+
68
+ const config: IntlayerConfig = {
69
+ middleware: {
70
+ cookieName: "ozelLocaleCookie", // varsayılan 'intlayer-locale'
71
+ },
72
+ };
73
+
74
+ export default config;
75
+ ```
76
+
77
+ ve şu şekilde alabilirsiniz:
78
+
79
+ ### İstemci tarafı
80
+
81
+ ```ts
82
+ // Varsayılan çerez adı ile
83
+ const locale = document.cookie
84
+ .split("; ")
85
+ .find((row) => row.startsWith("intlayer-locale="))
86
+ ?.split("=")[1];
87
+
88
+ // Özel çerez adı ile
89
+ const locale = document.cookie
90
+ .split("; ")
91
+ .find((row) => row.startsWith("ozelLocaleCookie="))
92
+ ?.split("=")[1];
93
+ ```
94
+
95
+ ### Sunucu tarafı (Next.js)
96
+
97
+ ```ts
98
+ import { cookies } from "next/headers";
99
+
100
+ // Varsayılan çerez adı ile
101
+ const locale = cookies().get("intlayer-locale")?.value;
102
+
103
+ // Özel çerez adı ile
104
+ const locale = cookies().get("ozelLocaleCookie")?.value;
105
+ ```
106
+
107
+ ### Locale henüz ayarlanmadıysa
108
+
109
+ Locale, kullanıcı dili açıkça seçtiğinde çerez olarak ayarlanır. Varsayılan olarak, yeni ziyaretçiler için locale başlık alanlarından yorumlanır.
110
+
111
+ Kullanıcının tercih ettiği locale'i istek başlıklarından tespit edebilirsiniz. İşte nasıl yapılacağına dair bir örnek:
112
+
113
+ ```ts
114
+ /**
115
+ * İstek başlıklarından locale tespiti
116
+ *
117
+ * accept-language başlığı, locale tespiti için en önemlisidir.
118
+ * Kullanıcının tercih ettiği dilleri öncelik sırasına göre q-değerleriyle içerir.
119
+ *
120
+ * Örnek: "en-US,en;q=0.9,fr;q=0.8,es;q=0.7"
121
+ * - en-US birincil dil (q=1.0 varsayılır)
122
+ * - en ikinci tercih (q=0.9)
123
+ * - fr üçüncü tercih (q=0.8)
124
+ * - es dördüncü tercih (q=0.7)
125
+ */
126
+ import { localeDetector } from "@intlayer/core";
127
+
128
+ /**
129
+ * Tarayıcıların tipik olarak gönderdiği örnek başlıklar
130
+ * Bu başlıklar kullanıcının tercih ettiği dili belirlemeye yardımcı olur
131
+ */
132
+ const ornekNegotiatorHeaders: Record<string, string> = {
133
+ "accept-language": "en-US,en;q=0.9,fr;q=0.8,es;q=0.7",
134
+ "accept":
135
+ "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
136
+ "user-agent":
137
+ "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",
138
+ };
139
+
140
+ // Kullanım örneği:
141
+ const tespitEdilenLocale = localeDetector(ornekNegotiatorHeaders);
142
+ ```