@intlayer/docs 5.8.1-canary.0 → 6.0.0-canary.0

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 +13 -13
  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
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  createdAt: 2024-08-13
3
- updatedAt: 2025-06-29
4
- title: التكوين
5
- description: تعلم كيفية تكوين Intlayer لتطبيقك. فهم الإعدادات والخيارات المختلفة المتاحة لتخصيص Intlayer وفقًا لاحتياجاتك.
3
+ updatedAt: 2025-09-16
4
+ title: التهيئة
5
+ description: تعلّم كيفية تهيئة Intlayer لتطبيقك. فهم الإعدادات والخيارات المختلفة المتاحة لتخصيص Intlayer حسب احتياجاتك.
6
6
  keywords:
7
- - التكوين
7
+ - التهيئة
8
8
  - الإعدادات
9
9
  - التخصيص
10
10
  - Intlayer
@@ -15,17 +15,17 @@ slugs:
15
15
  - configuration
16
16
  ---
17
17
 
18
- # وثائق تكوين Intlayer
18
+ # وثائق تهيئة Intlayer
19
19
 
20
20
  ## نظرة عامة
21
21
 
22
- تسمح ملفات تكوين Intlayer بتخصيص جوانب مختلفة من الإضافة، مثل التدويل، والوسيط، ومعالجة المحتوى. يوفر هذا المستند وصفًا تفصيليًا لكل خاصية في التكوين.
22
+ تتيح ملفات تهيئة Intlayer تخصيص جوانب مختلفة من الإضافة، مثل التدويل، والوسائط الوسيطة، والتعامل مع المحتوى. يوفر هذا المستند وصفًا تفصيليًا لكل خاصية في التهيئة.
23
23
 
24
24
  ---
25
25
 
26
- ## دعم ملفات التكوين
26
+ ## دعم ملفات التهيئة
27
27
 
28
- يدعم Intlayer تنسيقات ملفات التكوين JSON، JS، MJS، و TS:
28
+ يدعم Intlayer تنسيقات ملفات التهيئة JSON و JS و MJS و TS:
29
29
 
30
30
  - `intlayer.config.ts`
31
31
  - `intlayer.config.js`
@@ -36,30 +36,31 @@ slugs:
36
36
 
37
37
  ---
38
38
 
39
- ## مثال على ملف التكوين
39
+ ## مثال على ملف التهيئة
40
40
 
41
41
  ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
42
42
  import { Locales, type IntlayerConfig } from "intlayer";
43
43
 
44
44
  const config: IntlayerConfig = {
45
45
  internationalization: {
46
- locales: [Locales.ENGLISH],
46
+ locales: [Locales.ENGLISH], // اللغات المدعومة
47
47
  },
48
48
  content: {
49
- contentDir: ["src", "../ui-library"],
49
+ autoFill: "./{{fileName}}.content.json", // تعبئة المحتوى تلقائيًا من ملف JSON
50
+ contentDir: ["src", "../ui-library"], // مجلدات المحتوى
50
51
  },
51
52
  middleware: {
52
- noPrefix: false,
53
+ noPrefix: false, // استخدام بادئة في الوسائط الوسيطة
53
54
  },
54
55
  editor: {
55
- applicationURL: "https://example.com",
56
+ applicationURL: "https://example.com", // رابط التطبيق للمحرر
56
57
  },
57
58
  ai: {
58
- apiKey: process.env.OPENAI_API_KEY,
59
- applicationContext: "This is a test application",
59
+ apiKey: process.env.OPENAI_API_KEY, // مفتاح API للذكاء الاصطناعي
60
+ applicationContext: "This is a test application", // سياق التطبيق للذكاء الاصطناعي
60
61
  },
61
62
  build: {
62
- importMode: "dynamic",
63
+ importMode: "dynamic", // وضع الاستيراد أثناء البناء
63
64
  },
64
65
  };
65
66
 
@@ -70,26 +71,25 @@ export default config;
70
71
  const { Locales } = require("intlayer");
71
72
 
72
73
  /** @type {import('intlayer').IntlayerConfig} */
73
- // تكوين Intlayer
74
74
  const config = {
75
75
  internationalization: {
76
76
  locales: [Locales.ENGLISH], // اللغات المدعومة
77
77
  },
78
78
  content: {
79
- contentDir: ["src", "../ui-library"], // دلائل المحتوى
79
+ contentDir: ["src", "../ui-library"], // مجلدات المحتوى
80
80
  },
81
81
  middleware: {
82
- noPrefix: false, // عدم استخدام بادئة
82
+ noPrefix: false, // استخدام بادئة في الوسائط الوسيطة
83
83
  },
84
84
  editor: {
85
- applicationURL: "https://example.com", // عنوان URL للتطبيق
85
+ applicationURL: "https://example.com", // رابط التطبيق للمحرر
86
86
  },
87
87
  ai: {
88
- apiKey: process.env.OPENAI_API_KEY, // مفتاح API الخاص بالذكاء الاصطناعي
89
- applicationContext: "This is a test application", // سياق التطبيق
88
+ apiKey: process.env.OPENAI_API_KEY, // مفتاح API للذكاء الاصطناعي
89
+ applicationContext: "This is a test application", // سياق التطبيق للذكاء الاصطناعي
90
90
  },
91
91
  build: {
92
- importMode: "dynamic", // تفعيل الاستيراد الديناميكي
92
+ importMode: "dynamic", // وضع الاستيراد أثناء البناء
93
93
  },
94
94
  };
95
95
 
@@ -97,36 +97,44 @@ module.exports = config;
97
97
  ```
98
98
 
99
99
  ```json5 fileName=".intlayerrc" codeFormat="json"
100
- // تكوين Intlayer
101
100
  {
102
101
  "internationalization": {
103
102
  "locales": ["en"], // اللغات المدعومة
104
103
  },
105
104
  "content": {
106
- "typesDir": "content/types", // دليل أنواع المحتوى
105
+ "contentDir": ["src", "../ui-library"], // مجلدات المحتوى
107
106
  },
108
107
  "middleware": {
109
- "noPrefix": false,
108
+ "noPrefix": false, // استخدام بادئة في الوسائط الوسيطة
109
+ },
110
+ "editor": {
111
+ "applicationURL": "https://example.com", // رابط التطبيق للمحرر
112
+ },
113
+ "ai": {
114
+ "apiKey": "XXXX",
115
+ "applicationContext": "هذا تطبيق تجريبي",
116
+ },
117
+ "build": {
118
+ "importMode": "dynamic",
110
119
  },
111
120
  }
112
121
  ```
113
122
 
114
123
  ---
115
124
 
116
- ## مرجع التكوين
125
+ ## مرجع التهيئة
117
126
 
118
- تصف الأقسام التالية إعدادات التكوين المختلفة المتاحة لـ Intlayer.
127
+ تصف الأقسام التالية إعدادات التهيئة المختلفة المتاحة لـ Intlayer.
119
128
 
120
129
  ---
121
130
 
122
- ### تكوين التدويل
131
+ ### تهيئة التدويل
123
132
 
124
- يحدد الإعدادات المتعلقة بالتدويل، بما في ذلك اللغات المتاحة واللغة الافتراضية للتطبيق.
133
+ تعريف الإعدادات المتعلقة بالتدويل، بما في ذلك اللغات المتاحة واللغة الافتراضية للتطبيق.
125
134
 
126
135
  #### الخصائص
127
136
 
128
137
  - **locales**:
129
-
130
138
  - _النوع_: `string[]`
131
139
  - _الافتراضي_: `['en']`
132
140
  - _الوصف_: قائمة اللغات المدعومة في التطبيق.
@@ -137,337 +145,331 @@ module.exports = config;
137
145
  - _الافتراضي_: `[]`
138
146
  - _الوصف_: قائمة اللغات المطلوبة في التطبيق.
139
147
  - _مثال_: `[]`
140
- - _ملاحظة_: إذا كانت فارغة، فإن جميع اللغات مطلوبة في وضع `strict`.
141
- - _ملاحظة_: تأكد من أن اللغات المطلوبة محددة أيضًا في حقل `locales`.
148
+ - _ملاحظة_: إذا كانت فارغة، فكل اللغات مطلوبة في وضع `strict`.
149
+ - _ملاحظة_: تأكد من أن اللغات المطلوبة معرفة أيضًا في حقل `locales`.
142
150
  - **strictMode**:
143
-
144
151
  - _النوع_: `string`
145
152
  - _الافتراضي_: `inclusive`
146
- - _الوصف_: ضمان تنفيذ قوي للمحتوى الدولي باستخدام TypeScript.
147
- - _ملاحظة_: إذا تم تعيينها إلى "strict"، فإن دالة الترجمة `t` ستتطلب تعريف كل اللغات المعلنة. إذا كانت لغة واحدة مفقودة، أو إذا لم يتم الإعلان عن لغة في التكوين الخاص بك، فسيتم إلقاء خطأ.
148
- - _ملاحظة_: إذا تم تعيينها إلى "inclusive"، فإن دالة الترجمة `t` ستتطلب تعريف كل اللغات المعلنة. إذا كانت لغة واحدة مفقودة، فسيتم إلقاء تحذير. ولكن سيتم قبول إذا لم يتم الإعلان عن لغة في التكوين الخاص بك، ولكنها موجودة.
153
+ - _الوصف_: ضمان تنفيذ قوي للمحتوى الدولي باستخدام typescript.
154
+ - _ملاحظة_: إذا تم تعيينها إلى "strict"، فإن دالة الترجمة `t` ستتطلب تعريف كل اللغات المعلنة. إذا كانت لغة مفقودة، أو إذا لم يتم إعلان لغة في التهيئة الخاصة بك، فسيتم رمي خطأ.
155
+ - _ملاحظة_: إذا تم تعيينها إلى "inclusive"، فإن دالة الترجمة `t` ستتطلب تعريف كل اللغات المعلنة. إذا كانت لغة مفقودة، فستصدر تحذيرًا. لكنها ستقبل إذا كانت اللغة غير معلنة في التهيئة الخاصة بك، لكنها موجودة.
149
156
  - _ملاحظة_: إذا تم تعيينها إلى "loose"، فإن دالة الترجمة `t` ستقبل أي لغة موجودة.
150
157
 
151
158
  - **defaultLocale**:
152
-
153
159
  - _النوع_: `string`
154
160
  - _الافتراضي_: `'en'`
155
161
  - _الوصف_: اللغة الافتراضية المستخدمة كخيار احتياطي إذا لم يتم العثور على اللغة المطلوبة.
156
162
  - _مثال_: `'en'`
157
- - _ملاحظة_: يُستخدم هذا لتحديد اللغة عندما لا يتم تحديد أي لغة في عنوان URL أو الكوكيز أو الرأس.
163
+ - _ملاحظة_: يُستخدم هذا لتحديد اللغة عندما لا يتم تحديد أي لغة في عنوان URL أو ملف تعريف الارتباط أو الرأس.
158
164
 
159
165
  ---
160
166
 
161
167
  ### تكوين المحرر
162
168
 
163
- يحدد الإعدادات المتعلقة بالمحرر المدمج، بما في ذلك منفذ الخادم وحالة التفعيل.
169
+ يحدد الإعدادات المتعلقة بالمحرر المتكامل، بما في ذلك منفذ الخادم وحالة التفعيل.
164
170
 
165
171
  #### الخصائص
166
172
 
167
173
  - **applicationURL**:
168
-
169
174
  - _النوع_: `string`
170
175
  - _الافتراضي_: `http://localhost:3000`
171
- - _الوصف_: عنوان URL للتطبيق. يُستخدم لتقييد أصل المحرر لأسباب أمنية.
176
+ - _الوصف_: عنوان URL الخاص بالتطبيق. يُستخدم لتقييد أصل المحرر لأسباب أمنية.
172
177
  - _مثال_:
173
178
  - `'http://localhost:3000'`
174
179
  - `'https://example.com'`
175
180
  - `process.env.INTLAYER_EDITOR_URL`
176
- - _ملاحظة_: عنوان URL للتطبيق. يُستخدم لتقييد أصل المحرر لأسباب أمنية. إذا تم تعيينه إلى `'*'`، فإن المحرر يكون متاحًا من أي أصل.
181
+ - _ملاحظة_: عنوان URL الخاص بالتطبيق. يُستخدم لتقييد أصل المحرر لأسباب أمنية. إذا تم تعيينه إلى `'*'`، يكون المحرر متاحًا من أي أصل.
177
182
 
178
183
  - **port**:
179
-
180
184
  - _النوع_: `number`
181
185
  - _الافتراضي_: `8000`
182
- - _الوصف_: المنفذ المستخدم بواسطة خادم المحرر المرئي.
186
+ - _الوصف_: المنفذ المستخدم من قبل خادم المحرر المرئي.
183
187
 
184
188
  - **editorURL**:
185
-
186
189
  - _النوع_: `string`
187
190
  - _الافتراضي_: `'http://localhost:8000'`
188
- - _الوصف_: عنوان URL لخادم المحرر. يُستخدم لتقييد أصل المحرر لأسباب أمنية.
191
+ - _الوصف_: عنوان URL الخاص بخادم المحرر. يُستخدم لتقييد أصل المحرر لأسباب أمنية.
189
192
  - `'http://localhost:3000'`
190
193
  - `'https://example.com'`
191
194
  - `process.env.INTLAYER_EDITOR_URL`
192
- - _ملاحظة_: عنوان URL لخادم المحرر للوصول إليه من التطبيق. يُستخدم لتقييد الأصول التي يمكنها التفاعل مع التطبيق لأسباب أمنية. إذا تم تعيينه إلى `'*'`، فإن المحرر يكون متاحًا من أي أصل. يجب تعيينه إذا تم تغيير المنفذ، أو إذا كان المحرر مستضافًا على نطاق مختلف.
195
+ - _ملاحظة_: عنوان URL الخاص بخادم المحرر الذي يتم الوصول إليه من التطبيق. يُستخدم لتقييد الأصول التي يمكنها التفاعل مع التطبيق لأسباب أمنية. إذا تم تعيينه إلى `'*'`، يكون المحرر متاحًا من أي أصل. يجب تعيينه إذا تم تغيير المنفذ، أو إذا كان المحرر مستضافًا على نطاق مختلف.
193
196
 
194
197
  - **cmsURL**:
195
-
196
198
  - _النوع_: `string`
197
199
  - _الافتراضي_: `'https://intlayer.org'`
198
- - _الوصف_: عنوان URL لنظام إدارة المحتوى Intlayer.
200
+ - _الوصف_: عنوان URL الخاص بنظام إدارة المحتوى Intlayer.
199
201
  - _مثال_: `'https://intlayer.org'`
200
- - _ملاحظة_: عنوان URL لنظام إدارة المحتوى Intlayer.
202
+ - _ملاحظة_: عنوان URL الخاص بنظام إدارة المحتوى Intlayer.
201
203
 
202
204
  - **backendURL**:
203
-
204
205
  - _النوع_: `string`
205
206
  - _الافتراضي_: `https://back.intlayer.org`
206
- - _الوصف_: عنوان URL لخادم الخلفية.
207
+ - _الوصف_: عنوان URL الخاص بخادم الواجهة الخلفية.
207
208
  - _مثال_: `http://localhost:4000`
208
209
 
209
210
  - **enabled**:
210
-
211
211
  - _النوع_: `boolean`
212
212
  - _الافتراضي_: `true`
213
213
  - _الوصف_: يشير إلى ما إذا كان التطبيق يتفاعل مع المحرر المرئي.
214
214
  - _مثال_: `process.env.NODE_ENV !== 'production'`
215
- - _ملاحظة_: إذا كانت القيمة true، سيتمكن المحرر من التفاعل مع التطبيق. إذا كانت القيمة false، لن يتمكن المحرر من التفاعل مع التطبيق. في أي حال، يمكن تمكين المحرر فقط بواسطة المحرر المرئي. تعطيل المحرر لبيئات معينة هو وسيلة لتعزيز الأمان.
215
+ - _ملاحظة_: إذا كانت القيمة صحيحة، سيتمكن المحرر من التفاعل مع التطبيق. إذا كانت خاطئة، فلن يتمكن المحرر من التفاعل مع التطبيق. في جميع الأحوال، يمكن تمكين المحرر فقط من خلال المحرر المرئي. تعطيل المحرر لبيئات محددة هو وسيلة لتعزيز الأمان.
216
216
 
217
217
  - **clientId**:
218
-
219
218
  - _النوع_: `string` | `undefined`
220
219
  - _الافتراضي_: `undefined`
221
- - _الوصف_: clientId و clientSecret يسمحان لحزم intlayer بالمصادقة مع الخادم الخلفي باستخدام مصادقة oAuth2. يتم استخدام رمز وصول للمصادقة على المستخدم المرتبط بالمشروع. للحصول على رمز وصول، قم بزيارة https://intlayer.org/dashboard/project وأنشئ حسابًا.
220
+ - _الوصف_: يسمح كل من clientId و clientSecret لحزم intlayer بالمصادقة مع الخادم الخلفي باستخدام مصادقة oAuth2. يتم استخدام رمز وصول للمصادقة على المستخدم المرتبط بالمشروع. للحصول على رمز وصول، انتقل إلى https://intlayer.org/dashboard/project وأنشئ حسابًا.
222
221
  - _مثال_: `true`
223
222
  - _ملاحظة_: مهم: يجب الحفاظ على سرية clientId و clientSecret وعدم مشاركتهما علنًا. يرجى التأكد من الاحتفاظ بهما في مكان آمن، مثل متغيرات البيئة.
224
223
 
225
224
  - **clientSecret**:
226
-
227
225
  - _النوع_: `string` | `undefined`
228
226
  - _الافتراضي_: `undefined`
229
- - _الوصف_: يسمح كل من clientId و clientSecret لحزم intlayer بالمصادقة مع الخادم الخلفي باستخدام مصادقة oAuth2. يتم استخدام رمز وصول (access token) للمصادقة على المستخدم المرتبط بالمشروع. للحصول على رمز وصول، انتقل إلى https://intlayer.org/dashboard/project وأنشئ حسابًا.
227
+ - _الوصف_: يسمح كل من clientId و clientSecret لحزم intlayer بالمصادقة مع الخادم الخلفي باستخدام مصادقة oAuth2. يتم استخدام رمز وصول للمصادقة على المستخدم المرتبط بالمشروع. للحصول على رمز وصول، انتقل إلى https://intlayer.org/dashboard/project وأنشئ حسابًا.
230
228
  - _مثال_: `true`
231
229
  - _ملاحظة_: مهم: يجب الحفاظ على سرية clientId و clientSecret وعدم مشاركتهما علنًا. يرجى التأكد من الاحتفاظ بهما في مكان آمن، مثل متغيرات البيئة.
232
230
 
233
- - **hotReload**:
231
+ - **dictionaryPriorityStrategy**:
232
+ - _النوع_: `string`
233
+ - _الافتراضي_: `'local_first'`
234
+ - _الوصف_: الاستراتيجية لتحديد أولوية القواميس في حالة وجود كل من القواميس المحلية والقواميس البعيدة. إذا تم تعيينها إلى `'distant_first'`، ستعطي التطبيق أولوية للقواميس البعيدة على القواميس المحلية. إذا تم تعيينها إلى `'local_first'`، ستعطي التطبيق أولوية للقواميس المحلية على القواميس البعيدة.
235
+ - _مثال_: `'distant_first'`
234
236
 
237
+ - **liveSync**:
235
238
  - _النوع_: `boolean`
236
239
  - _الافتراضي_: `false`
237
- - _الوصف_: يشير إلى ما إذا كان يجب على التطبيق إعادة تحميل تكوينات اللغة تلقائيًا عند اكتشاف تغيير.
240
+ - _الوصف_: يشير إلى ما إذا كان يجب على خادم التطبيق إعادة تحميل محتوى التطبيق تلقائيًا عند اكتشاف تغيير في نظام إدارة المحتوى / المحرر المرئي / الخلفية.
238
241
  - _مثال_: `true`
239
- - _ملاحظة_: على سبيل المثال، عندما يتم إضافة قاموس جديد أو تحديثه، سيقوم التطبيق بتحديث المحتوى المعروض في الصفحة.
240
- - _ملاحظة_: نظرًا لأن إعادة التحميل الحي تحتاج إلى اتصال مستمر بالخادم، فهي متاحة فقط لعملاء خطة `enterprise`.
242
+ - _ملاحظة_: على سبيل المثال، عندما يتم إضافة قاموس جديد أو تحديثه، سيقوم التطبيق بتحديث المحتوى ليتم عرضه في الصفحة.
243
+ - _ملاحظة_: تحتاج المزامنة الحية إلى تعريض محتوى التطبيق على خادم آخر. هذا يعني أنه قد يؤثر قليلاً على أداء التطبيق. للحد من ذلك، نوصي باستضافة التطبيق وخادم المزامنة الحية على نفس الجهاز. أيضًا، يمكن أن يؤدي الجمع بين المزامنة الحية و`optimize` إلى تطبيق عدد كبير من الطلبات على خادم المزامنة الحية. اعتمادًا على البنية التحتية الخاصة بك، نوصي باختبار كلا الخيارين وتركيبتهما.
241
244
 
242
- - **dictionaryPriorityStrategy**:
245
+ - **liveSyncPort**:
246
+ - _النوع_: `number`
247
+ - _الافتراضي_: `4000`
248
+ - _الوصف_: منفذ خادم المزامنة الحية.
249
+ - _مثال_: `4000`
250
+ - _ملاحظة_: منفذ خادم المزامنة الحية.
251
+
252
+ - **liveSyncURL**:
243
253
  - _النوع_: `string`
244
- - _الافتراضي_: `'local_first'`
245
- - _الوصف_: الاستراتيجية لتحديد أولوية القواميس في حالة وجود قواميس محلية وبعيدة. إذا تم تعيينها إلى `'distant_first'`، سيعطي التطبيق الأولوية للقواميس البعيدة على القواميس المحلية. إذا تم تعيينها إلى `'local_first'`، سيعطي التطبيق الأولوية للقواميس المحلية على القواميس البعيدة.
246
- - _مثال_: `'distant_first'`
254
+ - _الافتراضي_: `'http://localhost:{liveSyncPort}'`
255
+ - _الوصف_: عنوان URL الخاص بخادم المزامنة الحية.
256
+ - _مثال_: `'https://example.com'`
257
+ - _ملاحظة_: يشير إلى localhost بشكل افتراضي ولكن يمكن تغييره إلى أي عنوان URL في حالة وجود خادم مزامنة حية عن بُعد.
247
258
 
248
259
  ### تكوين الوسيط
249
260
 
250
- ### إعدادات الوسيط
251
-
252
- الإعدادات التي تتحكم في سلوك الوسيط، بما في ذلك كيفية تعامل التطبيق مع الكوكيز، والرؤوس، وبادئات عناوين URL لإدارة اللغة.
261
+ الإعدادات التي تتحكم في سلوك الوسيط، بما في ذلك كيفية تعامل التطبيق مع ملفات تعريف الارتباط، والرؤوس، والبادئات في عناوين URL لإدارة اللغة.
253
262
 
254
263
  #### الخصائص
255
264
 
256
265
  - **headerName**:
257
-
258
266
  - _النوع_: `string`
259
267
  - _الافتراضي_: `'x-intlayer-locale'`
260
268
  - _الوصف_: اسم رأس HTTP المستخدم لتحديد اللغة.
261
269
  - _مثال_: `'x-custom-locale'`
262
- - _ملاحظة_: هذا مفيد لتحديد اللغة بناءً على API.
270
+ - _ملاحظة_: هذا مفيد لتحديد اللغة بناءً على واجهة برمجة التطبيقات (API).
263
271
 
264
272
  - **cookieName**:
265
-
266
273
  - _النوع_: `string`
267
274
  - _الافتراضي_: `'intlayer-locale'`
268
- - _الوصف_: اسم الكوكي المستخدم لتخزين اللغة.
275
+ - _الوصف_: اسم ملف تعريف الارتباط المستخدم لتخزين اللغة.
269
276
  - _مثال_: `'custom-locale'`
270
277
  - _ملاحظة_: يُستخدم للحفاظ على اللغة عبر الجلسات.
271
278
 
272
279
  - **prefixDefault**:
273
-
274
280
  - _النوع_: `boolean`
275
281
  - _الافتراضي_: `false`
276
282
  - _الوصف_: ما إذا كان يجب تضمين اللغة الافتراضية في عنوان URL.
277
283
  - _مثال_: `true`
278
284
  - _ملاحظة_:
279
- - إذا كانت القيمة `true` و `defaultLocale = 'en'`: path = `/en/dashboard` أو `/fr/dashboard`
280
- - إذا كانت القيمة `false` و `defaultLocale = 'en'`: path = `/dashboard` أو `/fr/dashboard`
285
+ - إذا كانت القيمة `true` و `defaultLocale = 'en'`: المسار = `/en/dashboard` أو `/fr/dashboard`
286
+ - إذا كانت القيمة `false` و `defaultLocale = 'en'`: المسار = `/dashboard` أو `/fr/dashboard`
281
287
 
282
288
  - **basePath**:
283
-
284
289
  - _النوع_: `string`
285
- - _القيمة الافتراضية_: `''`
290
+ - _الافتراضي_: `''`
286
291
  - _الوصف_: المسار الأساسي لعناوين URL الخاصة بالتطبيق.
287
292
  - _مثال_: `'/my-app'`
288
293
  - _ملاحظة_:
289
294
  - إذا كان التطبيق مستضافًا على `https://example.com/my-app`
290
- - المسار الأساسي هو `'/my-app'`
291
- - سيكون عنوان URL `https://example.com/my-app/en`
292
- - إذا لم يتم تعيين المسار الأساسي، سيكون عنوان URL `https://example.com/en`
295
+ - يكون المسار الأساسي هو `'/my-app'`
296
+ - سيكون عنوان URL هو `https://example.com/my-app/en`
297
+ - إذا لم يتم تعيين المسار الأساسي، سيكون عنوان URL هو `https://example.com/en`
293
298
 
294
299
  - **serverSetCookie**:
295
-
296
300
  - _النوع_: `string`
297
- - _القيمة الافتراضية_: `'always'`
298
- - _الوصف_: قاعدة تعيين الكوكي الخاص باللغة على الخادم.
299
- - _الخيارات_: `'always'`, `'never'`
301
+ - _الافتراضي_: `'always'`
302
+ - _الوصف_: قاعدة تعيين ملف تعريف الارتباط للغة على الخادم.
303
+ - _الخيارات_: `'always' `'never'`
300
304
  - _مثال_: `'never'`
301
- - _ملاحظة_: يتحكم في ما إذا كان يتم تعيين الكوكي الخاص باللغة مع كل طلب أو لا.
305
+ - _ملاحظة_: تتحكم فيما إذا كان يتم تعيين ملف تعريف الارتباط للغة عند كل طلب أو لا يتم تعيينه أبدًا.
302
306
 
303
307
  - **noPrefix**:
304
-
305
308
  - _النوع_: `boolean`
306
- - _القيمة الافتراضية_: `false`
309
+ - _الافتراضي_: `false`
307
310
  - _الوصف_: ما إذا كان يجب حذف بادئة اللغة من عناوين URL.
308
311
  - _مثال_: `true`
309
312
  - _ملاحظة_:
310
313
  - إذا كانت القيمة `true`: لا توجد بادئة في عنوان URL
311
314
  - إذا كانت القيمة `false`: توجد بادئة في عنوان URL
312
315
  - مثال مع `basePath = '/my-app'`:
313
- - إذا كانت `noPrefix = false`: سيكون عنوان URL `https://example.com/my-app/en`
314
- - إذا كانت `noPrefix = true`: سيكون عنوان URL `https://example.com`
316
+ - إذا كانت `noPrefix = false`: سيكون عنوان URL هو `https://example.com/my-app/en`
317
+ - إذا كانت `noPrefix = true`: سيكون عنوان URL هو `https://example.com`
315
318
 
316
319
  - **detectLocaleOnPrefetchNoPrefix**:
317
-
318
320
  - _النوع_: `boolean`
319
- - _القيمة الافتراضية_: `false`
320
- - _الوصف_: يتحكم في ما إذا كان اكتشاف اللغة يحدث أثناء طلبات التحميل المسبق لـ Next.js.
321
+ - _الافتراضي_: `false`
322
+ - _الوصف_: يتحكم فيما إذا كان يتم اكتشاف اللغة أثناء طلبات التحميل المسبق في Next.js.
321
323
  - _مثال_: `true`
322
- - _ملاحظة_: يؤثر هذا الإعداد على كيفية تعامل Next.js مع التحميل المسبق للغة:
324
+ - _ملاحظة_: تؤثر هذه الإعدادات على كيفية تعامل Next.js مع التحميل المسبق للغة:
323
325
  - **سيناريو المثال:**
324
326
  - لغة متصفح المستخدم هي `'fr'`
325
327
  - الصفحة الحالية هي `/fr/about`
326
- - الرابط يحمل مسبقًا `/about`
328
+ - الرابط يقوم بالتحميل المسبق لـ `/about`
327
329
  - **مع `detectLocaleOnPrefetchNoPrefix: true`:**
328
- - التحميل المسبق يكتشف اللغة `'fr'` من المتصفح
330
+ - يكتشف التحميل المسبق لغة `'fr'` من المتصفح
329
331
  - يعيد توجيه التحميل المسبق إلى `/fr/about`
330
332
  - **مع `detectLocaleOnPrefetchNoPrefix: false` (الافتراضي):**
331
- - التحميل المسبق يستخدم اللغة الافتراضية
332
- - يعيد توجيه التحميل المسبق إلى `/en/about` (بافتراض أن `'en'` هي الافتراضية)
333
- - **متى تستخدم `true`:**
334
- - تطبيقك يستخدم روابط داخلية غير محلية (مثل `<a href="/about">`)
335
- - تريد سلوك اكتشاف لغة متسق بين الطلبات العادية وطلبات التحميل المسبق
336
- - **متى تستخدم `false` (الافتراضي):**
337
- - تطبيقك يستخدم روابط ببادئة لغة (مثل `<a href="/fr/about">`)
333
+ - يستخدم التحميل المسبق اللغة الافتراضية
334
+ - يعيد توجيه التحميل المسبق إلى `/en/about` (بافتراض أن `'en'` هي اللغة الافتراضية)
335
+ - **متى تستخدم القيمة `true`:**
336
+ - تطبيقك يستخدم روابط داخلية غير مخصصة للغة (مثل `<a href="/about">`)
337
+ - تريد سلوك اكتشاف اللغة متسق بين الطلبات العادية وطلبات التحميل المسبق
338
+ - **متى تستخدم القيمة `false` (الافتراضي):**
339
+ - تطبيقك يستخدم روابط مخصصة للغة (مثل `<a href="/fr/about">`)
338
340
  - تريد تحسين أداء التحميل المسبق
339
341
  - تريد تجنب حلقات إعادة التوجيه المحتملة
340
342
 
341
343
  ---
342
344
 
343
- ### إعدادات المحتوى
345
+ ### تكوين المحتوى
344
346
 
345
- الإعدادات المتعلقة بمعالجة المحتوى داخل التطبيق، بما في ذلك أسماء الدلائل، امتدادات الملفات، والتكوينات المشتقة.
347
+ إعدادات تتعلق بمعالجة المحتوى داخل التطبيق، بما في ذلك أسماء الدلائل، امتدادات الملفات، والتكوينات المشتقة.
346
348
 
347
349
  #### الخصائص
348
350
 
349
- - **watch**:
351
+ - **autoFill**:
352
+ - _النوع_: `boolean | string | { [key in Locales]?: string }`
353
+ - _الافتراضي_: `undefined`
354
+ - _الوصف_: يشير إلى كيفية ملء المحتوى تلقائيًا باستخدام الذكاء الاصطناعي. يمكن الإعلان عنه عالميًا في ملف `intlayer.config.ts`.
355
+ - _مثال_: true
356
+ - _مثال_: `'./{{fileName}}.content.json'`
357
+ - _مثال_: `{ fr: './{{fileName}}.fr.content.json', es: './{{fileName}}.es.content.json' }`
358
+ - _ملاحظة_: تكوين الملء التلقائي. يمكن أن يكون:
359
+ - boolean: تمكين الملء التلقائي لجميع اللغات
360
+ - string: مسار إلى ملف واحد أو قالب مع متغيرات
361
+ - object: مسارات ملفات لكل لغة
350
362
 
363
+ - **watch**:
351
364
  - _النوع_: `boolean`
352
- - _القيمة الافتراضية_: `process.env.NODE_ENV === 'development'`
353
- - _الوصف_: يشير إلى ما إذا كان Intlayer يجب أن يراقب التغييرات في ملفات إعلان المحتوى في التطبيق لإعادة بناء القواميس ذات الصلة.
365
+ - _الافتراضي_: `process.env.NODE_ENV === 'development'`
366
+ - _الوصف_: يشير إلى ما إذا كان يجب على Intlayer مراقبة التغييرات في ملفات إعلان المحتوى داخل التطبيق لإعادة بناء القواميس ذات الصلة.
354
367
 
355
368
  - **fileExtensions**:
356
-
357
369
  - _النوع_: `string[]`
358
- - _القيمة الافتراضية_: `['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.tsx', '.content.jsx']`
370
+ - _الافتراضي_: `['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.tsx', '.content.jsx']`
359
371
  - _الوصف_: امتدادات الملفات التي يجب البحث عنها عند بناء القواميس.
360
372
  - _مثال_: `['.data.ts', '.data.js', '.data.json']`
361
373
  - _ملاحظة_: تخصيص امتدادات الملفات يمكن أن يساعد في تجنب التعارضات.
362
374
 
363
375
  - **baseDir**:
364
-
365
376
  - _النوع_: `string`
366
- - _القيمة الافتراضية_: `process.cwd()`
377
+ - _الافتراضي_: `process.cwd()`
367
378
  - _الوصف_: الدليل الأساسي للمشروع.
368
379
  - _مثال_: `'/path/to/project'`
369
- - _ملاحظة_: يُستخدم هذا لحل جميع الأدلة المتعلقة بـ Intlayer.
380
+ - _ملاحظة_: يُستخدم هذا لحل جميع الدلائل المتعلقة بـ Intlayer.
370
381
 
371
382
  - **dictionaryOutput**:
372
-
373
383
  - _النوع_: `string[]`
374
- - _القيمة الافتراضية_: `['intlayer']`
384
+ - _الافتراضي_: `['intlayer']`
375
385
  - _الوصف_: نوع إخراج القاموس المستخدم، مثل `'intlayer'` أو `'i18next'`.
376
386
 
377
387
  - **contentDir**:
378
-
379
388
  - _النوع_: `string[]`
380
- - _القيمة الافتراضية_: `['src']`
389
+ - _الافتراضي_: `['.']`
381
390
  - _مثال_: `['src', '../../ui-library', require.resolve("@my-package/content")]`
382
391
  - _الوصف_: مسار الدليل حيث يتم تخزين المحتوى.
383
392
 
384
393
  - **dictionariesDir**:
385
-
386
394
  - _النوع_: `string`
387
- - _القيمة الافتراضية_: `'.intlayer/dictionaries'`
388
- - _الوصف_: مسار الدليل لتخزين النتائج الوسيطة أو النهائية.
395
+ - _الافتراضي_: `'.intlayer/dictionaries'`
396
+ - _الوصف_: مسار الدليل لتخزين النتائج الوسيطة أو الناتجة.
389
397
 
390
398
  - **moduleAugmentationDir**:
391
-
392
399
  - _النوع_: `string`
393
- - _القيمة الافتراضية_: `'.intlayer/types'`
400
+ - _الافتراضي_: `'.intlayer/types'`
394
401
  - _الوصف_: دليل لتوسيع الوحدات، مما يسمح بتحسين اقتراحات IDE وفحص الأنواع.
395
402
  - _مثال_: `'intlayer-types'`
396
403
  - _ملاحظة_: تأكد من تضمين هذا في `tsconfig.json`.
397
404
 
398
405
  - **unmergedDictionariesDir**:
399
-
400
406
  - _النوع_: `string`
401
- - _القيمة الافتراضية_: `'.intlayer/unmerged_dictionary'`
407
+ - _الافتراضي_: `'.intlayer/unmerged_dictionary'`
402
408
  - _الوصف_: الدليل لتخزين القواميس غير المدمجة.
403
409
  - _مثال_: `'translations'`
404
410
 
405
411
  - **dictionariesDir**:
406
-
407
412
  - _النوع_: `string`
408
- - _القيمة الافتراضية_: `'.intlayer/dictionary'`
413
+ - _الافتراضي_: `'.intlayer/dictionary'`
409
414
  - _الوصف_: الدليل لتخزين قواميس التوطين.
410
415
  - _مثال_: `'translations'`
411
416
 
412
417
  - **i18nextResourcesDir**:
413
-
414
418
  - _النوع_: `string`
415
- - _القيمة الافتراضية_: `'i18next_dictionary'`
419
+ - _الافتراضي_: `'i18next_dictionary'`
416
420
  - _الوصف_: الدليل لتخزين قواميس i18n.
417
421
  - _مثال_: `'translations'`
418
- - _ملاحظة_: تأكد من تكوين هذا الدليل لنوع إخراج i18next.
422
+ - _ملاحظة_: تأكد من تكوين هذا الدليل لنوع الإخراج i18next.
419
423
 
420
424
  - **typesDir**:
421
-
422
425
  - _النوع_: `string`
423
- - _القيمة الافتراضية_: `'types'`
426
+ - _الافتراضي_: `'types'`
424
427
  - _الوصف_: الدليل لتخزين أنواع القواميس.
425
428
  - _مثال_: `'intlayer-types'`
426
429
 
427
430
  - **mainDir**:
428
-
429
431
  - _النوع_: `string`
430
- - _القيمة الافتراضية_: `'main'`
431
- - _الوصف_: الدليل حيث يتم تخزين ملفات التطبيق الرئيسية.
432
+ - _الافتراضي_: `'main'`
433
+ - _الوصف_: الدليل الذي تُخزن فيه ملفات التطبيق الرئيسية.
432
434
  - _مثال_: `'intlayer-main'`
433
435
 
434
436
  - **excludedPath**:
435
437
  - _النوع_: `string[]`
436
- - _القيمة الافتراضية_: `['node_modules']`
437
- - _الوصف_: الأدلة المستثناة من البحث عن المحتوى.
438
- - _ملاحظة_: هذا الإعداد لم يُستخدم بعد، ولكنه مخطط للتنفيذ في المستقبل.
438
+ - _الافتراضي_: `['node_modules']`
439
+ - _الوصف_: الأدلة المستبعدة من البحث في المحتوى.
440
+ - _ملاحظة_: هذا الإعداد غير مستخدم حالياً، لكنه مخطط لتطبيقه في المستقبل.
439
441
 
440
- ### إعدادات السجل
442
+ ### إعدادات المسجل (Logger)
441
443
 
442
- الإعدادات التي تتحكم في السجل، بما في ذلك البادئة المستخدمة.
444
+ الإعدادات التي تتحكم في المسجل، بما في ذلك البادئة التي تُستخدم.
443
445
 
444
446
  #### الخصائص
445
447
 
446
448
  - **mode**:
447
-
448
449
  - _النوع_: `string`
449
- - _القيمة الافتراضية_: `default`
450
- - _الوصف_: يشير إلى وضع السجل.
451
- - _الخيارات_: `default`, `verbose`, `disabled`
450
+ - _الافتراضي_: `default`
451
+ - _الوصف_: يشير إلى وضع المسجل.
452
+ - _الخيارات_: `default `verbose `disabled`
452
453
  - _مثال_: `default`
453
- - _ملاحظة_: وضع السجل. وضع verbose سيسجل المزيد من المعلومات، ولكنه يمكن استخدامه لأغراض التصحيح. وضع disabled سيعطل السجل.
454
+ - _ملاحظة_: وضع المسجل. الوضع المفصل (verbose) يسجل معلومات أكثر، ويمكن استخدامه لأغراض التصحيح. الوضع المعطل (disabled) يعطل المسجل.
454
455
 
455
456
  - **prefix**:
456
-
457
457
  - _النوع_: `string`
458
- - _القيمة الافتراضية_: `'[intlayer] '`
459
- - _الوصف_: البادئة الخاصة بالسجل.
458
+ - _الافتراضي_: `'[intlayer] '`
459
+ - _الوصف_: بادئة المسجل.
460
460
  - _مثال_: `'[my custom prefix] '`
461
- - _ملاحظة_: البادئة الخاصة بالسجل.
461
+ - _ملاحظة_: بادئة المسجل.
462
+
463
+ ### تكوين الذكاء الاصطناعي
462
464
 
463
- ### إعدادات الذكاء الاصطناعي
465
+ الإعدادات التي تتحكم في ميزات الذكاء الاصطناعي في Intlayer، بما في ذلك المزود، النموذج، ومفتاح API.
464
466
 
465
- الإعدادات التي تتحكم في ميزات الذكاء الاصطناعي لـ Intlayer، بما في ذلك المزود، النموذج، ومفتاح API.
466
- هذا التكوين اختياري إذا كنت مسجلاً في [لوحة تحكم Intlayer](https://intlayer.org/dashboard/project) باستخدام مفتاح وصول. سيقوم Intlayer تلقائيًا بإدارة الحلول الأكثر كفاءة وفعالية من حيث التكلفة لاحتياجاتك. استخدام الخيارات الافتراضية يضمن صيانة أفضل على المدى الطويل حيث يقوم Intlayer بتحديث نفسه باستمرار لاستخدام النماذج الأكثر صلة.
467
+ هذا التكوين اختياري إذا كنت مسجلاً في [لوحة تحكم Intlayer](https://intlayer.org/dashboard/project) باستخدام مفتاح وصول. ستدير Intlayer تلقائيًا الحل الأكثر كفاءة وفعالية من حيث التكلفة لاحتياجاتك في الذكاء الاصطناعي. يضمن استخدام الخيارات الافتراضية صيانة أفضل على المدى الطويل حيث تقوم Intlayer بالتحديث المستمر لاستخدام النماذج الأكثر ملاءمة.
467
468
 
468
- إذا كنت تفضل استخدام مفتاح API الخاص بك أو نموذج معين، يمكنك تعريف إعدادات الذكاء الاصطناعي المخصصة الخاصة بك.
469
- سيتم استخدام هذا التكوين عالميًا عبر بيئة Intlayer الخاصة بك. ستستخدم أوامر CLI هذه الإعدادات كإعدادات افتراضية للأوامر (مثل `fill`) بالإضافة إلى SDK، المحرر المرئي، وCMS. يمكنك تجاوز هذه القيم الافتراضية لحالات استخدام محددة باستخدام معلمات الأوامر.
470
- يدعم Intlayer عدة مزودين للذكاء الاصطناعي لتعزيز المرونة والاختيار. المزودون المدعومون حاليًا هم:
469
+ إذا كنت تفضل استخدام مفتاح API الخاص بك أو نموذج معين، يمكنك تعريف تكوين الذكاء الاصطناعي المخصص الخاص بك.
470
+ سيتم استخدام تكوين الذكاء الاصطناعي هذا على مستوى بيئة Intlayer الخاصة بك بشكل عام. ستستخدم أوامر CLI هذه الإعدادات كقيم افتراضية للأوامر (مثل `fill`)، وكذلك SDK، والمحرر المرئي، ونظام إدارة المحتوى (CMS). يمكنك تجاوز هذه القيم الافتراضية لحالات استخدام محددة باستخدام معلمات الأوامر.
471
+
472
+ يدعم Intlayer عدة مزودي ذكاء اصطناعي لزيادة المرونة والاختيار. المزودون المدعومون حاليًا هم:
471
473
 
472
474
  - **OpenAI** (الافتراضي)
473
475
  - **Anthropic Claude**
@@ -479,93 +481,94 @@ module.exports = config;
479
481
  #### الخصائص
480
482
 
481
483
  - **provider**:
482
-
483
484
  - _النوع_: `string`
484
- - _القيمة الافتراضية_: `'openai'`
485
+ - _الافتراضي_: `'openai'`
485
486
  - _الوصف_: المزود المستخدم لميزات الذكاء الاصطناعي في Intlayer.
486
487
  - _الخيارات_: `'openai'`، `'anthropic'`، `'mistral'`، `'deepseek'`، `'gemini'`
487
488
  - _مثال_: `'anthropic'`
488
- - _ملاحظة_: قد تتطلب المزودات المختلفة مفاتيح API مختلفة ولديها نماذج تسعير مختلفة.
489
+ - _ملاحظة_: قد تتطلب مزودات مختلفة مفاتيح API مختلفة ولها نماذج تسعير مختلفة.
489
490
 
490
491
  - **model**:
491
-
492
492
  - _النوع_: `string`
493
- - _القيمة الافتراضية_: لا شيء
493
+ - _الافتراضي_: لا شيء
494
494
  - _الوصف_: النموذج المستخدم لميزات الذكاء الاصطناعي في Intlayer.
495
495
  - _مثال_: `'gpt-4o-2024-11-20'`
496
- - _ملاحظة_: النموذج المحدد للاستخدام يختلف حسب المزود.
496
+ - _ملاحظة_: يختلف النموذج المحدد المستخدم حسب المزود.
497
497
 
498
498
  - **temperature**:
499
-
500
499
  - _النوع_: `number`
501
- - _القيمة الافتراضية_: لا شيء
500
+ - _الافتراضي_: لا شيء
502
501
  - _الوصف_: تتحكم درجة الحرارة في عشوائية استجابات الذكاء الاصطناعي.
503
502
  - _مثال_: `0.1`
504
- - _ملاحظة_: درجة حرارة أعلى ستجعل الذكاء الاصطناعي أكثر إبداعًا وأقل توقعًا.
503
+ - _ملاحظة_: درجة حرارة أعلى تجعل الذكاء الاصطناعي أكثر إبداعًا وأقل قابلية للتنبؤ.
505
504
 
506
505
  - **apiKey**:
507
-
508
506
  - _النوع_: `string`
509
- - _القيمة الافتراضية_: لا شيء
507
+ - _الافتراضي_: لا شيء
510
508
  - _الوصف_: مفتاح API الخاص بك للمزود المحدد.
511
509
  - _مثال_: `process.env.OPENAI_API_KEY`
512
510
  - _ملاحظة_: مهم: يجب الحفاظ على سرية مفاتيح API وعدم مشاركتها علنًا. يرجى التأكد من الاحتفاظ بها في مكان آمن، مثل متغيرات البيئة.
513
511
 
514
512
  - **applicationContext**:
515
513
  - _النوع_: `string`
516
- - _القيمة الافتراضية_: لا شيء
517
- - _الوصف_: يوفر سياقًا إضافيًا حول تطبيقك لنموذج الذكاء الاصطناعي، مما يساعده على توليد ترجمات أكثر دقة وملاءمة للسياق. يمكن أن يشمل ذلك معلومات حول مجال تطبيقك، الجمهور المستهدف، النبرة، أو المصطلحات الخاصة.
514
+ - _الافتراضي_: لا شيء
515
+ - _الوصف_: يوفر سياقًا إضافيًا حول تطبيقك لنموذج الذكاء الاصطناعي، مما يساعده على توليد ترجمات أكثر دقة وملاءمة للسياق. يمكن أن يشمل ذلك معلومات حول مجال تطبيقك، الجمهور المستهدف، النغمة، أو المصطلحات الخاصة.
518
516
 
519
- ### تكوين البناء
517
+ ### إعدادات البناء
520
518
 
521
- الإعدادات التي تتحكم في كيفية تحسين وبناء التدويل في تطبيقك.
519
+ الإعدادات التي تتحكم في كيفية تحسين Intlayer وبناء التدويل في تطبيقك.
522
520
 
523
- تنطبق خيارات البناء على إضافات `@intlayer/babel` و `@intlayer/swc`.
521
+ تنطبق خيارات البناء على الإضافات `@intlayer/babel` و `@intlayer/swc`.
524
522
 
525
- > في وضع التطوير، يستخدم Intlayer استيرادات ثابتة للقواميس لتبسيط تجربة التطوير.
523
+ > في وضع التطوير، يستخدم Intlayer الاستيراد الثابت للقواميس لتبسيط تجربة التطوير.
526
524
 
527
- > عند التحسين، سيقوم Intlayer باستبدال استدعاءات القواميس لتحسين التجزئة، بحيث يقوم البناء النهائي باستيراد القواميس المستخدمة فعليًا فقط.
525
+ > عند التهيئة للتحسين، سيقوم Intlayer باستبدال استدعاءات القواميس لتحسين تقسيم الحزم، بحيث يقوم الحزمة النهائية باستيراد القواميس التي يتم استخدامها فقط.
528
526
 
529
527
  #### الخصائص
530
528
 
531
529
  - **optimize**:
532
-
533
530
  - _النوع_: `boolean`
534
- - _القيمة الافتراضية_: `process.env.NODE_ENV === 'production'`
535
- - _الوصف_: يتحكم في ما إذا كان يجب تحسين البناء.
536
- - _مثال_: `true`
537
- - _ملاحظة_: عند التمكين، سيقوم Intlayer باستبدال جميع استدعاءات القواميس لتحسين التجزئة. بهذه الطريقة سيقوم البناء النهائي باستيراد القواميس المستخدمة فقط. ستظل جميع عمليات الاستيراد كاستيرادات ثابتة لتجنب المعالجة غير المتزامنة عند تحميل القواميس.
538
- - _ملاحظة_: سيقوم Intlayer باستبدال جميع استدعاءات `useIntlayer` بالوضع المحدد بواسطة خيار `importMode` و `getIntlayer` بـ `getDictionary`.
539
- - _ملاحظة_: تعتمد هذه الخيارات على إضافات `@intlayer/babel` و `@intlayer/swc`.
540
- - _ملاحظة_: تأكد من أن جميع المفاتيح معلنة بشكل ثابت في استدعاءات `useIntlayer`. مثال: `useIntlayer('navbar')`.
531
+ - _الافتراضي_: `process.env.NODE_ENV === 'production'`
532
+ - _الوصف_: يتحكم فيما إذا كان يجب تحسين عملية البناء.
533
+ - _المثال_: `true`
534
+ - _ملاحظة_: عند التفعيل، سيقوم Intlayer باستبدال جميع استدعاءات القواميس لتحسين تقسيم الحزم. بهذه الطريقة، ستقوم الحزمة النهائية باستيراد القواميس المستخدمة فقط. ستبقى جميع الاستيرادات استيرادًا ثابتًا لتجنب المعالجة غير المتزامنة عند تحميل القواميس.
535
+ - _ملاحظة_: سيقوم Intlayer باستبدال جميع استدعاءات `useIntlayer` بالنمط المحدد بواسطة خيار `importMode` و`getIntlayer` بـ `getDictionary`.
536
+ - _ملاحظة_: يعتمد هذا الخيار على الإضافات `@intlayer/babel` و `@intlayer/swc`.
537
+ - _ملاحظة_: تأكد من إعلان جميع المفاتيح بشكل ثابت في استدعاءات `useIntlayer على سبيل المثال `useIntlayer('navbar')`.
541
538
 
542
539
  - **importMode**:
543
-
544
- - _النوع_: `'static' | 'dynamic' | 'async'`
545
- - _القيمة الافتراضية_: `'static'`
540
+ - _النوع_: `'static' | 'dynamic' | 'live'`
541
+ - _الافتراضي_: `'static'`
546
542
  - _الوصف_: يتحكم في كيفية استيراد القواميس.
547
543
  - _مثال_: `'dynamic'`
548
- - _ملاحظة_: الأوضاع المتاحة:
544
+ - _ملاحظة_: الأنماط المتاحة:
549
545
  - "static": يتم استيراد القواميس بشكل ثابت. يستبدل `useIntlayer` بـ `useDictionary`.
550
- - "dynamic": يتم استيراد القواميس ديناميكيًا باستخدام Suspense. يستبدل `useIntlayer` بـ `useDictionaryDynamic`.
551
- - "async": يتم استيراد القواميس ديناميكيًا بشكل غير متزامن. يستبدل `useIntlayer` بـ `await useDictionaryAsync`.
552
- - _ملاحظة_: تعتمد الاستيرادات الديناميكية على Suspense وقد تؤثر قليلاً على أداء العرض.
553
- - _ملاحظة_: إذا تم تعطيلها، سيتم تحميل جميع اللغات مرة واحدة، حتى لو لم يتم استخدامها.
554
- - _ملاحظة_: تعتمد هذه الخيارات على إضافات `@intlayer/babel` و `@intlayer/swc`.
555
- - _ملاحظة_: تأكد من أن جميع المفاتيح معلنة بشكل ثابت في استدعاءات `useIntlayer`. مثال: `useIntlayer('navbar')`.
556
- - _ملاحظة_: سيتم تجاهل هذا الخيار إذا تم تعطيل `optimize`.
557
- - _ملاحظة_: في معظم الحالات، سيتم استخدام `"dynamic"` للتطبيقات React، `"async"` لتطبيقات Vue.js.
558
- - _ملاحظة_: لن تؤثر هذه الخيارات على الدوال `getIntlayer`، `getDictionary`، `useDictionary`، `useDictionaryAsync` و `useDictionaryDynamic`.
546
+ - "dynamic": يتم استيراد القواميس بشكل ديناميكي باستخدام Suspense. يستبدل `useIntlayer` بـ `useDictionaryDynamic`.
547
+ - "live": يتم جلب القواميس ديناميكيًا باستخدام واجهة برمجة التطبيقات للمزامنة الحية. يستبدل `useIntlayer` بـ `useDictionaryFetch`.
548
+ - _ملاحظة_: تعتمد الاستيرادات الديناميكية على Suspense وقد تؤثر قليلاً على أداء العرض.
549
+ - _ملاحظة_: إذا تم تعطيلها، سيتم تحميل جميع اللغات مرة واحدة، حتى لو لم تُستخدم.
550
+ - _ملاحظة_: تعتمد هذه الخيار على الإضافات `@intlayer/babel` و `@intlayer/swc`.
551
+ - _ملاحظة_: تأكد من إعلان جميع المفاتيح بشكل ثابت في استدعاءات `useIntlayer مثل `useIntlayer('navbar')`.
552
+ - _ملاحظة_: سيتم تجاهل هذا الخيار إذا تم تعطيل `optimize`.
553
+ - _ملاحظة_: إذا تم تعيينه إلى "live"، فسيتم تحويل القواميس التي تحتوي على محتوى عن بُعد والمحددة كعلامات "live" فقط إلى وضع البث المباشر. وسيتم استيراد القواميس الأخرى ديناميكيًا كـ "dynamic" لتحسين عدد استعلامات الجلب وأداء التحميل.
554
+ - _ملاحظة_: سيستخدم وضع البث المباشر واجهة برمجة التطبيقات للمزامنة الحية لجلب القواميس. إذا فشل استدعاء واجهة برمجة التطبيقات، فسيتم استيراد القواميس ديناميكيًا كـ "dynamic".
555
+ - _ملاحظة_: لن تؤثر هذه الخيار على الدوال `getIntlayer`، `getDictionary`، `useDictionary`، `useDictionaryAsync` و `useDictionaryDynamic`.
559
556
 
560
557
  - **traversePattern**:
561
558
  - _النوع_: `string[]`
562
- - _القيمة الافتراضية_: `['**/*.{js,ts,mjs,cjs,jsx,tsx,mjx,cjx}', '!**/node_modules/**']`
563
- - _الوصف_: الأنماط التي تحدد الملفات التي يجب اجتيازها أثناء التحسين.
564
- - _مثال_: `['src/**/*.{ts,tsx}', '../ui-library/**/*.{ts,tsx}', '!**/node_modules/**']`
565
- - _ملاحظة_: استخدم هذا لتقييد التحسين على ملفات الكود ذات الصلة وتحسين أداء البناء.
559
+ - _الافتراضي_: `['**\/*.{js,ts,mjs,cjs,jsx,tsx,mjx,cjx}', '!**\/node_modules/**']`
560
+ - _الوصف_: أنماط تحدد الملفات التي يجب استعراضها أثناء التحسين.
561
+ - _مثال_: `['src/**\/*.{ts,tsx}', '../ui-library/**\/*.{ts,tsx}', '!**/node_modules/**']`
562
+ - _ملاحظة_: استخدم هذا لتحديد التحسين لملفات الكود ذات الصلة وتحسين أداء البناء.
566
563
  - _ملاحظة_: سيتم تجاهل هذا الخيار إذا تم تعطيل `optimize`.
567
564
  - _ملاحظة_: استخدم نمط glob.
568
565
 
569
566
  ## تاريخ الوثيقة
570
567
 
571
- - 5.5.11 - 2025-06-29: إضافة أوامر `docs`
568
+ | الإصدار | التاريخ | التغييرات |
569
+ | ------- | ---------- | -------------------------------------------------------------------------------- |
570
+ | 6.0.0 | 2025-09-16 | إضافة وضع الاستيراد `live` |
571
+ | 6.0.0 | 2025-09-04 | استبدال حقل `hotReload` بـ `liveSync` وإضافة حقلي `liveSyncPort` و `liveSyncURL` |
572
+ | 5.6.1 | 2025-07-25 | استبدال `activateDynamicImport` بخيار `importMode` |
573
+ | 5.6.0 | 2025-07-13 | تغيير الدليل الافتراضي للمحتوى من `['src']` إلى `['.']` |
574
+ | 5.5.11 | 2025-06-29 | إضافة أوامر `docs` |