@intlayer/docs 7.5.10 → 7.5.12

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 (313) hide show
  1. package/blog/ar/intlayer_with_i18next.md +0 -2
  2. package/blog/ar/intlayer_with_next-i18next.md +0 -2
  3. package/blog/ar/intlayer_with_react-i18next.md +0 -2
  4. package/blog/de/intlayer_with_i18next.md +0 -45
  5. package/blog/de/intlayer_with_next-i18next.md +0 -46
  6. package/blog/de/intlayer_with_react-i18next.md +0 -2
  7. package/blog/en/intlayer_with_i18next.md +0 -46
  8. package/blog/en/intlayer_with_next-i18next.md +0 -48
  9. package/blog/en/intlayer_with_next-intl.md +0 -44
  10. package/blog/en/intlayer_with_react-i18next.md +0 -44
  11. package/blog/en/intlayer_with_react-intl.md +0 -42
  12. package/blog/en/intlayer_with_vue-i18n.md +0 -44
  13. package/blog/en-GB/intlayer_with_i18next.md +0 -45
  14. package/blog/en-GB/intlayer_with_next-i18next.md +0 -47
  15. package/blog/en-GB/intlayer_with_next-intl.md +0 -42
  16. package/blog/en-GB/intlayer_with_react-i18next.md +0 -43
  17. package/blog/en-GB/intlayer_with_react-intl.md +0 -42
  18. package/blog/en-GB/intlayer_with_vue-i18n.md +0 -46
  19. package/blog/es/intlayer_with_i18next.md +0 -45
  20. package/blog/es/intlayer_with_next-i18next.md +0 -47
  21. package/blog/es/intlayer_with_next-intl.md +0 -42
  22. package/blog/es/intlayer_with_react-i18next.md +0 -43
  23. package/blog/es/intlayer_with_react-intl.md +0 -42
  24. package/blog/es/intlayer_with_vue-i18n.md +0 -46
  25. package/blog/fr/intlayer_with_i18next.md +0 -45
  26. package/blog/fr/intlayer_with_next-i18next.md +0 -47
  27. package/blog/fr/intlayer_with_next-intl.md +0 -42
  28. package/blog/fr/intlayer_with_react-i18next.md +0 -43
  29. package/blog/fr/intlayer_with_react-intl.md +0 -42
  30. package/blog/fr/intlayer_with_vue-i18n.md +0 -46
  31. package/blog/hi/intlayer_with_i18next.md +0 -2
  32. package/blog/hi/intlayer_with_next-i18next.md +0 -2
  33. package/blog/hi/intlayer_with_react-i18next.md +0 -2
  34. package/blog/id/intlayer_with_i18next.md +0 -2
  35. package/blog/id/intlayer_with_next-i18next.md +0 -2
  36. package/blog/id/intlayer_with_react-i18next.md +0 -2
  37. package/blog/it/intlayer_with_i18next.md +0 -2
  38. package/blog/it/intlayer_with_next-i18next.md +0 -2
  39. package/blog/it/intlayer_with_react-i18next.md +0 -2
  40. package/blog/ja/intlayer_with_i18next.md +0 -45
  41. package/blog/ja/intlayer_with_next-i18next.md +0 -46
  42. package/blog/ja/intlayer_with_next-intl.md +0 -42
  43. package/blog/ja/intlayer_with_react-i18next.md +0 -42
  44. package/blog/ja/intlayer_with_react-intl.md +0 -42
  45. package/blog/ja/intlayer_with_vue-i18n.md +0 -46
  46. package/blog/ko/intlayer_with_i18next.md +0 -2
  47. package/blog/ko/intlayer_with_next-i18next.md +0 -2
  48. package/blog/ko/intlayer_with_react-i18next.md +0 -1
  49. package/blog/pl/intlayer_with_i18next.md +0 -45
  50. package/blog/pl/intlayer_with_next-i18next.md +0 -46
  51. package/blog/pl/intlayer_with_next-intl.md +0 -42
  52. package/blog/pl/intlayer_with_react-i18next.md +0 -43
  53. package/blog/pl/intlayer_with_react-intl.md +0 -42
  54. package/blog/pl/intlayer_with_vue-i18n.md +0 -46
  55. package/blog/pt/intlayer_with_i18next.md +0 -2
  56. package/blog/pt/intlayer_with_next-i18next.md +0 -2
  57. package/blog/pt/intlayer_with_react-i18next.md +0 -2
  58. package/blog/ru/intlayer_with_i18next.md +0 -45
  59. package/blog/ru/intlayer_with_next-i18next.md +0 -47
  60. package/blog/ru/intlayer_with_next-intl.md +0 -42
  61. package/blog/ru/intlayer_with_react-i18next.md +0 -43
  62. package/blog/ru/intlayer_with_react-intl.md +0 -42
  63. package/blog/ru/intlayer_with_vue-i18n.md +0 -46
  64. package/blog/tr/intlayer_with_i18next.md +0 -2
  65. package/blog/tr/intlayer_with_next-i18next.md +0 -1
  66. package/blog/tr/intlayer_with_react-i18next.md +0 -2
  67. package/blog/vi/intlayer_with_i18next.md +0 -2
  68. package/blog/vi/intlayer_with_next-i18next.md +0 -2
  69. package/blog/vi/intlayer_with_react-i18next.md +0 -2
  70. package/blog/zh/intlayer_with_i18next.md +0 -2
  71. package/blog/zh/intlayer_with_next-i18next.md +0 -2
  72. package/blog/zh/intlayer_with_react-i18next.md +0 -2
  73. package/blog/zh/intlayer_with_vue-i18n.md +0 -46
  74. package/dist/cjs/generated/blog.entry.cjs +58 -29
  75. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  76. package/dist/cjs/generated/docs.entry.cjs +254 -97
  77. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  78. package/dist/cjs/generated/frequentQuestions.entry.cjs +30 -15
  79. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  80. package/dist/cjs/generated/legal.entry.cjs +4 -2
  81. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  82. package/dist/esm/generated/blog.entry.mjs +58 -29
  83. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  84. package/dist/esm/generated/docs.entry.mjs +254 -97
  85. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  86. package/dist/esm/generated/frequentQuestions.entry.mjs +30 -15
  87. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  88. package/dist/esm/generated/legal.entry.mjs +4 -2
  89. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  90. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  91. package/dist/types/generated/docs.entry.d.ts +3 -0
  92. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  93. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  94. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  95. package/docs/ar/cli/ci.md +137 -0
  96. package/docs/ar/cli/index.md +7 -1
  97. package/docs/ar/cli/list.md +39 -2
  98. package/docs/ar/cli/list_projects.md +131 -0
  99. package/docs/ar/intlayer_CMS.md +20 -0
  100. package/docs/ar/intlayer_with_next-i18next.md +0 -1
  101. package/docs/ar/intlayer_with_nextjs_14.md +28 -0
  102. package/docs/ar/intlayer_with_nextjs_15.md +28 -0
  103. package/docs/ar/intlayer_with_nextjs_16.md +28 -0
  104. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1159 -0
  105. package/docs/ar/plugins/sync-json.md +6 -2
  106. package/docs/de/cli/ci.md +137 -0
  107. package/docs/de/cli/index.md +7 -1
  108. package/docs/de/cli/list.md +39 -2
  109. package/docs/de/cli/list_projects.md +130 -0
  110. package/docs/de/intlayer_CMS.md +20 -0
  111. package/docs/de/intlayer_with_next-i18next.md +0 -1
  112. package/docs/de/intlayer_with_nextjs_14.md +28 -0
  113. package/docs/de/intlayer_with_nextjs_15.md +28 -0
  114. package/docs/de/intlayer_with_nextjs_16.md +28 -0
  115. package/docs/de/intlayer_with_nextjs_no_locale_path.md +1152 -0
  116. package/docs/de/plugins/sync-json.md +6 -2
  117. package/docs/en/cli/ci.md +137 -0
  118. package/docs/en/cli/index.md +14 -1
  119. package/docs/en/cli/list.md +39 -2
  120. package/docs/en/cli/list_projects.md +128 -0
  121. package/docs/en/interest_of_intlayer.md +1 -1
  122. package/docs/en/intlayer_CMS.md +20 -0
  123. package/docs/en/intlayer_with_next-i18next.md +0 -1
  124. package/docs/en/intlayer_with_nextjs_14.md +28 -0
  125. package/docs/en/intlayer_with_nextjs_15.md +28 -0
  126. package/docs/en/intlayer_with_nextjs_16.md +31 -1
  127. package/docs/en/intlayer_with_nextjs_no_locale_path.md +1132 -0
  128. package/docs/en/plugins/sync-json.md +6 -2
  129. package/docs/en-GB/cli/ci.md +137 -0
  130. package/docs/en-GB/cli/index.md +7 -1
  131. package/docs/en-GB/cli/list.md +39 -2
  132. package/docs/en-GB/cli/list_projects.md +130 -0
  133. package/docs/en-GB/intlayer_CMS.md +20 -0
  134. package/docs/en-GB/intlayer_with_next-i18next.md +0 -1
  135. package/docs/en-GB/intlayer_with_nextjs_14.md +28 -0
  136. package/docs/en-GB/intlayer_with_nextjs_15.md +28 -0
  137. package/docs/en-GB/intlayer_with_nextjs_16.md +28 -0
  138. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1154 -0
  139. package/docs/en-GB/plugins/sync-json.md +6 -2
  140. package/docs/es/cli/ci.md +137 -0
  141. package/docs/es/cli/index.md +7 -1
  142. package/docs/es/cli/list.md +39 -2
  143. package/docs/es/cli/list_projects.md +130 -0
  144. package/docs/es/intlayer_CMS.md +20 -0
  145. package/docs/es/intlayer_with_next-i18next.md +0 -1
  146. package/docs/es/intlayer_with_nextjs_14.md +28 -0
  147. package/docs/es/intlayer_with_nextjs_15.md +28 -0
  148. package/docs/es/intlayer_with_nextjs_16.md +28 -0
  149. package/docs/es/intlayer_with_nextjs_no_locale_path.md +1143 -0
  150. package/docs/es/plugins/sync-json.md +6 -2
  151. package/docs/fr/cli/ci.md +137 -0
  152. package/docs/fr/cli/index.md +7 -1
  153. package/docs/fr/cli/list.md +39 -2
  154. package/docs/fr/cli/list_projects.md +131 -0
  155. package/docs/fr/intlayer_CMS.md +20 -0
  156. package/docs/fr/intlayer_with_next-i18next.md +0 -1
  157. package/docs/fr/intlayer_with_nextjs_14.md +28 -0
  158. package/docs/fr/intlayer_with_nextjs_15.md +28 -0
  159. package/docs/fr/intlayer_with_nextjs_16.md +28 -0
  160. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1174 -0
  161. package/docs/fr/plugins/sync-json.md +9 -5
  162. package/docs/hi/cli/ci.md +137 -0
  163. package/docs/hi/cli/index.md +7 -1
  164. package/docs/hi/cli/list.md +38 -1
  165. package/docs/hi/cli/list_projects.md +130 -0
  166. package/docs/hi/intlayer_CMS.md +20 -0
  167. package/docs/hi/intlayer_with_next-i18next.md +0 -1
  168. package/docs/hi/intlayer_with_nextjs_14.md +28 -0
  169. package/docs/hi/intlayer_with_nextjs_15.md +28 -0
  170. package/docs/hi/intlayer_with_nextjs_16.md +28 -0
  171. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1151 -0
  172. package/docs/hi/plugins/sync-json.md +6 -2
  173. package/docs/id/cli/ci.md +137 -0
  174. package/docs/id/cli/index.md +7 -1
  175. package/docs/id/cli/list.md +38 -1
  176. package/docs/id/cli/list_projects.md +128 -0
  177. package/docs/id/intlayer_CMS.md +20 -0
  178. package/docs/id/intlayer_with_next-i18next.md +0 -1
  179. package/docs/id/intlayer_with_nextjs_14.md +28 -0
  180. package/docs/id/intlayer_with_nextjs_15.md +28 -0
  181. package/docs/id/intlayer_with_nextjs_16.md +28 -0
  182. package/docs/id/intlayer_with_nextjs_no_locale_path.md +1154 -0
  183. package/docs/id/plugins/sync-json.md +6 -2
  184. package/docs/it/cli/ci.md +137 -0
  185. package/docs/it/cli/index.md +7 -1
  186. package/docs/it/cli/list.md +39 -2
  187. package/docs/it/cli/list_projects.md +130 -0
  188. package/docs/it/intlayer_CMS.md +20 -0
  189. package/docs/it/intlayer_with_next-i18next.md +0 -1
  190. package/docs/it/intlayer_with_nextjs_14.md +28 -0
  191. package/docs/it/intlayer_with_nextjs_15.md +28 -0
  192. package/docs/it/intlayer_with_nextjs_16.md +28 -0
  193. package/docs/it/intlayer_with_nextjs_no_locale_path.md +1148 -0
  194. package/docs/it/plugins/sync-json.md +6 -2
  195. package/docs/ja/cli/ci.md +137 -0
  196. package/docs/ja/cli/index.md +7 -1
  197. package/docs/ja/cli/list.md +38 -1
  198. package/docs/ja/cli/list_projects.md +136 -0
  199. package/docs/ja/intlayer_CMS.md +20 -0
  200. package/docs/ja/intlayer_with_next-i18next.md +0 -1
  201. package/docs/ja/intlayer_with_nextjs_14.md +28 -0
  202. package/docs/ja/intlayer_with_nextjs_15.md +28 -0
  203. package/docs/ja/intlayer_with_nextjs_16.md +28 -0
  204. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1222 -0
  205. package/docs/ja/plugins/sync-json.md +6 -2
  206. package/docs/ko/cli/ci.md +137 -0
  207. package/docs/ko/cli/index.md +7 -1
  208. package/docs/ko/cli/list.md +38 -1
  209. package/docs/ko/cli/list_projects.md +128 -0
  210. package/docs/ko/intlayer_CMS.md +20 -0
  211. package/docs/ko/intlayer_with_next-i18next.md +0 -1
  212. package/docs/ko/intlayer_with_nextjs_14.md +28 -0
  213. package/docs/ko/intlayer_with_nextjs_15.md +28 -0
  214. package/docs/ko/intlayer_with_nextjs_16.md +28 -0
  215. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1205 -0
  216. package/docs/ko/plugins/sync-json.md +6 -2
  217. package/docs/pl/cli/ci.md +137 -0
  218. package/docs/pl/cli/index.md +7 -1
  219. package/docs/pl/cli/list.md +39 -2
  220. package/docs/pl/cli/list_projects.md +130 -0
  221. package/docs/pl/intlayer_CMS.md +20 -0
  222. package/docs/pl/intlayer_with_next-i18next.md +0 -1
  223. package/docs/pl/intlayer_with_nextjs_14.md +28 -0
  224. package/docs/pl/intlayer_with_nextjs_15.md +28 -0
  225. package/docs/pl/intlayer_with_nextjs_16.md +28 -0
  226. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1149 -0
  227. package/docs/pl/plugins/sync-json.md +6 -2
  228. package/docs/pt/cli/ci.md +137 -0
  229. package/docs/pt/cli/index.md +7 -1
  230. package/docs/pt/cli/list.md +39 -2
  231. package/docs/pt/cli/list_projects.md +134 -0
  232. package/docs/pt/intlayer_CMS.md +20 -0
  233. package/docs/pt/intlayer_with_next-i18next.md +0 -1
  234. package/docs/pt/intlayer_with_nextjs_14.md +28 -0
  235. package/docs/pt/intlayer_with_nextjs_15.md +28 -0
  236. package/docs/pt/intlayer_with_nextjs_16.md +28 -0
  237. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1152 -0
  238. package/docs/pt/plugins/sync-json.md +6 -2
  239. package/docs/ru/cli/ci.md +137 -0
  240. package/docs/ru/cli/index.md +7 -1
  241. package/docs/ru/cli/list.md +39 -2
  242. package/docs/ru/cli/list_projects.md +130 -0
  243. package/docs/ru/intlayer_CMS.md +20 -0
  244. package/docs/ru/intlayer_with_next-i18next.md +0 -1
  245. package/docs/ru/intlayer_with_nextjs_14.md +28 -0
  246. package/docs/ru/intlayer_with_nextjs_15.md +28 -0
  247. package/docs/ru/intlayer_with_nextjs_16.md +28 -0
  248. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1204 -0
  249. package/docs/ru/plugins/sync-json.md +6 -2
  250. package/docs/tr/cli/ci.md +137 -0
  251. package/docs/tr/cli/index.md +7 -1
  252. package/docs/tr/cli/list.md +39 -2
  253. package/docs/tr/cli/list_projects.md +134 -0
  254. package/docs/tr/intlayer_CMS.md +20 -0
  255. package/docs/tr/intlayer_with_next-i18next.md +0 -1
  256. package/docs/tr/intlayer_with_nextjs_14.md +28 -0
  257. package/docs/tr/intlayer_with_nextjs_15.md +28 -0
  258. package/docs/tr/intlayer_with_nextjs_16.md +28 -0
  259. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1159 -0
  260. package/docs/tr/plugins/sync-json.md +6 -2
  261. package/docs/uk/compiler.md +133 -0
  262. package/docs/uk/component_i18n.md +194 -0
  263. package/docs/uk/intlayer_with_nextjs_14.md +1646 -0
  264. package/docs/uk/intlayer_with_nextjs_15.md +1910 -0
  265. package/docs/uk/intlayer_with_nextjs_16.md +1763 -0
  266. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1159 -0
  267. package/docs/uk/intlayer_with_react_native+expo.md +715 -0
  268. package/docs/uk/packages/intlayer/getConfiguration.md +145 -0
  269. package/docs/uk/vs_code_extension.md +133 -0
  270. package/docs/vi/cli/ci.md +137 -0
  271. package/docs/vi/cli/index.md +7 -1
  272. package/docs/vi/cli/list.md +38 -1
  273. package/docs/vi/cli/list_projects.md +130 -0
  274. package/docs/vi/intlayer_CMS.md +20 -0
  275. package/docs/vi/intlayer_with_next-i18next.md +0 -1
  276. package/docs/vi/intlayer_with_nextjs_14.md +28 -0
  277. package/docs/vi/intlayer_with_nextjs_15.md +28 -0
  278. package/docs/vi/intlayer_with_nextjs_16.md +28 -0
  279. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1151 -0
  280. package/docs/vi/plugins/sync-json.md +6 -2
  281. package/docs/zh/cli/ci.md +137 -0
  282. package/docs/zh/cli/index.md +7 -1
  283. package/docs/zh/cli/list.md +38 -1
  284. package/docs/zh/cli/list_projects.md +130 -0
  285. package/docs/zh/intlayer_CMS.md +20 -0
  286. package/docs/zh/intlayer_with_next-i18next.md +0 -1
  287. package/docs/zh/intlayer_with_nextjs_14.md +28 -0
  288. package/docs/zh/intlayer_with_nextjs_15.md +28 -0
  289. package/docs/zh/intlayer_with_nextjs_16.md +28 -0
  290. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1206 -0
  291. package/docs/zh/plugins/sync-json.md +9 -5
  292. package/frequent_questions/ar/SSR_Next_no_[locale].md +1 -1
  293. package/frequent_questions/de/SSR_Next_no_[locale].md +1 -1
  294. package/frequent_questions/en/SSR_Next_no_[locale].md +1 -1
  295. package/frequent_questions/en-GB/SSR_Next_no_[locale].md +1 -1
  296. package/frequent_questions/es/SSR_Next_no_[locale].md +1 -1
  297. package/frequent_questions/fr/SSR_Next_no_[locale].md +1 -1
  298. package/frequent_questions/hi/SSR_Next_no_[locale].md +1 -1
  299. package/frequent_questions/id/SSR_Next_no_[locale].md +1 -1
  300. package/frequent_questions/it/SSR_Next_no_[locale].md +1 -1
  301. package/frequent_questions/ja/SSR_Next_no_[locale].md +1 -1
  302. package/frequent_questions/ko/SSR_Next_no_[locale].md +1 -1
  303. package/frequent_questions/pl/SSR_Next_no_[locale].md +1 -1
  304. package/frequent_questions/pt/SSR_Next_no_[locale].md +1 -1
  305. package/frequent_questions/ru/SSR_Next_no_[locale].md +1 -1
  306. package/frequent_questions/tr/SSR_Next_no_[locale].md +1 -1
  307. package/frequent_questions/vi/SSR_Next_no_[locale].md +1 -1
  308. package/frequent_questions/zh/SSR_Next_no_[locale].md +1 -1
  309. package/package.json +6 -6
  310. package/src/generated/blog.entry.ts +29 -0
  311. package/src/generated/docs.entry.ts +157 -0
  312. package/src/generated/frequentQuestions.entry.ts +15 -0
  313. package/src/generated/legal.entry.ts +2 -0
@@ -0,0 +1,137 @@
1
+ ---
2
+ createdAt: 2026-01-06
3
+ updatedAt: 2026-01-06
4
+ title: أمر CI
5
+ description: تعلم كيفية استخدام أمر Intlayer CI لتشغيل أوامر Intlayer مع بيانات الاعتماد المحقونة تلقائياً في خطوط أنابيب CI/CD والمستودعات الأحادية.
6
+ keywords:
7
+ - CI
8
+ - CI/CD
9
+ - الأتمتة
10
+ - المستودع الأحادي
11
+ - بيانات الاعتماد
12
+ - CLI
13
+ - Intlayer
14
+ slugs:
15
+ - doc
16
+ - concept
17
+ - cli
18
+ - ci
19
+ history:
20
+ - version: 7.5.11
21
+ date: 2026-01-06
22
+ changes: إضافة أمر CI
23
+ ---
24
+
25
+ # أمر CI
26
+
27
+ ```bash
28
+ npx intlayer ci <command...>
29
+ ```
30
+
31
+ تم تصميم أمر CI للأتمتة وخطوط أنابيب CI/CD. يقوم بحقن بيانات الاعتماد تلقائياً من متغير البيئة `INTLAYER_PROJECT_CREDENTIALS` ويمكنه تشغيل أوامر Intlayer عبر مشاريع متعددة في مستودع أحادي.
32
+
33
+ ## كيفية العمل
34
+
35
+ يعمل أمر CI في وضعين:
36
+
37
+ 1. **وضع المشروع الواحد**: إذا كان الدليل الحالي يطابق أحد مسارات المشاريع في `INTLAYER_PROJECT_CREDENTIALS`، فإنه يشغل الأمر فقط لهذا المشروع المحدد.
38
+
39
+ 2. **وضع التكرار**: إذا لم يتم اكتشاف سياق مشروع محدد، فإنه يتكرر عبر جميع المشاريع المُكوّنة ويشغل الأمر لكل واحد منها.
40
+
41
+ ## متغير البيئة
42
+
43
+ يتطلب الأمر تعيين متغير البيئة `INTLAYER_PROJECT_CREDENTIALS`. يجب أن يحتوي هذا المتغير على كائن JSON يقوم بتعيين مسارات المشاريع إلى بيانات اعتمادها:
44
+
45
+ ```json
46
+ {
47
+ "packages/app": {
48
+ "clientId": "your-client-id-1",
49
+ "clientSecret": "your-client-secret-1"
50
+ },
51
+ "packages/admin": {
52
+ "clientId": "your-client-id-2",
53
+ "clientSecret": "your-client-secret-2"
54
+ }
55
+ }
56
+ ```
57
+
58
+ ## اكتشاف مدير الحزم
59
+
60
+ يكتشف أمر CI تلقائياً مدير الحزم المستخدم (npm أو yarn أو pnpm أو bun) بناءً على متغير البيئة `npm_config_user_agent` ويستخدم الأمر المناسب لتنفيذ Intlayer.
61
+
62
+ ## الوسائط
63
+
64
+ - **`<command...>`**: أمر Intlayer المراد تنفيذه (على سبيل المثال، `fill` أو `push` أو `build`). يمكنك تمرير أي أمر Intlayer ووسائطه.
65
+
66
+ > مثال: `npx intlayer ci fill --verbose`
67
+ >
68
+ > مثال: `npx intlayer ci push`
69
+ >
70
+ > مثال: `npx intlayer ci build`
71
+
72
+ ## أمثلة
73
+
74
+ ### تشغيل أمر في وضع المشروع الواحد
75
+
76
+ إذا كنت في دليل مشروع يطابق أحد المسارات في `INTLAYER_PROJECT_CREDENTIALS`:
77
+
78
+ ```bash
79
+ cd packages/app
80
+ npx intlayer ci fill
81
+ ```
82
+
83
+ سيقوم هذا بتشغيل أمر `fill` مع حقن بيانات الاعتماد تلقائياً لمشروع `packages/app`.
84
+
85
+ ### تشغيل أمر عبر جميع المشاريع
86
+
87
+ إذا كنت في دليل لا يطابق أي مسار مشروع، سيتكرر الأمر عبر جميع المشاريع المُكوّنة:
88
+
89
+ ```bash
90
+ cd /path/to/monorepo
91
+ npx intlayer ci push
92
+ ```
93
+
94
+ سيقوم هذا بتشغيل أمر `push` لكل مشروع مُكوّن في `INTLAYER_PROJECT_CREDENTIALS`.
95
+
96
+ ### تمرير علامات إضافية
97
+
98
+ يمكنك تمرير أي علامات إلى أمر Intlayer الأساسي:
99
+
100
+ ```bash
101
+ npx intlayer ci fill --verbose --mode complete
102
+ ```
103
+
104
+ ### الاستخدام في خطوط أنابيب CI/CD
105
+
106
+ في تكوين CI/CD الخاص بك (على سبيل المثال، GitHub Actions أو GitLab CI)، قم بتعيين `INTLAYER_PROJECT_CREDENTIALS` كسر:
107
+
108
+ ```yaml
109
+ # مثال GitHub Actions
110
+ env:
111
+ INTLAYER_PROJECT_CREDENTIALS: ${{ secrets.INTLAYER_PROJECT_CREDENTIALS }}
112
+
113
+ steps:
114
+ - name: ملء القواميس
115
+ run: npx intlayer ci fill
116
+ ```
117
+
118
+ ## معالجة الأخطاء
119
+
120
+ - إذا لم يتم تعيين `INTLAYER_PROJECT_CREDENTIALS`، فسيخرج الأمر مع خطأ.
121
+ - إذا لم يكن `INTLAYER_PROJECT_CREDENTIALS` JSON صالحاً، فسيخرج الأمر مع خطأ.
122
+ - إذا لم يكن مسار المشروع موجوداً، فسيتم تخطيه مع تحذير.
123
+ - إذا فشل أي مشروع، فسيخرج الأمر برمز حالة غير صفري.
124
+
125
+ ## حالات الاستخدام
126
+
127
+ - **أتمتة المستودع الأحادي**: تشغيل أوامر Intlayer عبر مشاريع متعددة في مستودع أحادي
128
+ - **خطوط أنابيب CI/CD**: أتمتة إدارة القواميس في سير عمل التكامل المستمر
129
+ - **العمليات المجمعة**: تنفيذ نفس العملية على مشاريع Intlayer متعددة في وقت واحد
130
+ - **إدارة الأسرار**: إدارة بيانات الاعتماد بشكل آمن لعدة مشاريع باستخدام متغيرات البيئة
131
+
132
+ ## أفضل ممارسات الأمان
133
+
134
+ - قم بتخزين `INTLAYER_PROJECT_CREDENTIALS` كأسرار مشفرة في منصة CI/CD الخاصة بك
135
+ - لا تقم أبداً بإيداع بيانات الاعتماد في التحكم بالإصدارات
136
+ - استخدم بيانات اعتماد خاصة بالبيئة لبيئات النشر المختلفة
137
+ - قم بتدوير بيانات الاعتماد بانتظام
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-08-11
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-01-06
4
4
  title: CLI
5
5
  description: اكتشف كيفية استخدام واجهة الأوامر Intlayer CLI لإدارة موقعك متعدد اللغات. اتبع الخطوات في هذه الوثائق الإلكترونية لإعداد مشروعك في دقائق قليلة.
6
6
  keywords:
@@ -17,6 +17,9 @@ slugs:
17
17
  - concept
18
18
  - cli
19
19
  history:
20
+ - version: 7.5.11
21
+ date: 2026-01-06
22
+ changes: إضافة أمر projects list
20
23
  - version: 7.5.9
21
24
  date: 2025-12-30
22
25
  changes: إضافة أمر init
@@ -119,6 +122,7 @@ bun add intlayer-cli -g
119
122
  - **[بناء القواميس](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/build.md)** - بناء قواميسك من ملفات إعلان المحتوى
120
123
  - **[مراقبة القواميس](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/watch.md)** - مراقبة التغييرات وبناء القواميس تلقائيًا
121
124
  - **[التحقق من إصدار CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/version.md)** - التحقق من إصدار Intlayer CLI المثبت
125
+ - **[قائمة المشاريع](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/list_projects.md)** - قائمة بجميع مشاريع Intlayer في دليل أو مستودع git
122
126
 
123
127
  ### إدارة القواميس
124
128
 
@@ -166,6 +170,7 @@ bun add intlayer-cli -g
166
170
  "intlayer:list": "npx intlayer content list",
167
171
  "intlayer:test": "npx intlayer content test",
168
172
  "intlayer:transform": "npx intlayer transform",
173
+ "intlayer:projects": "npx intlayer projects list",
169
174
  "intlayer:doc:translate": "npx intlayer doc translate",
170
175
  "intlayer:doc:review": "npx intlayer doc review"
171
176
  }
@@ -175,3 +180,4 @@ bun add intlayer-cli -g
175
180
  >
176
181
  > - `npx intlayer list` بدلاً من `npx intlayer content list`
177
182
  > - `npx intlayer test` بدلاً من `npx intlayer content test`
183
+ > - `npx intlayer projects-list` أو `npx intlayer pl` بدلاً من `npx intlayer projects list`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-08-11
3
- updatedAt: 2025-11-22
3
+ updatedAt: 2026-01-06
4
4
  title: قائمة ملفات إعلان المحتوى
5
5
  description: تعلّم كيفية سرد جميع ملفات إعلان المحتوى في مشروعك.
6
6
  keywords:
@@ -13,6 +13,13 @@ slugs:
13
13
  - concept
14
14
  - cli
15
15
  - list
16
+ history:
17
+ - version: 7.5.12
18
+ date: 2026-01-06
19
+ changes: إضافة خيار الإخراج المطلق لأمر القائمة
20
+ - version: 7.5.11
21
+ date: 2026-01-06
22
+ changes: إضافة خيار إخراج JSON لأمر القائمة
16
23
  ---
17
24
 
18
25
  # قائمة ملفات إعلان المحتوى
@@ -27,14 +34,36 @@ npx intlayer content list
27
34
 
28
35
  يعرض هذا الأمر جميع ملفات إعلان المحتوى في مشروعك، مع عرض مفاتيح القاموس الخاصة بها ومسارات الملفات. وهو مفيد للحصول على نظرة عامة على جميع ملفات المحتوى الخاصة بك والتحقق من اكتشافها بشكل صحيح بواسطة Intlayer.
29
36
 
30
- ## مثال:
37
+ ## الوسائط:
38
+
39
+ - **`--json`**: إخراج النتائج بتنسيق JSON بدلاً من النص المنسق. مفيد للبرمجة النصية والوصول البرمجي.
40
+
41
+ > مثال: `npx intlayer content list --json`
42
+
43
+ ## أمثلة:
44
+
45
+ ### سرد ملفات إعلان المحتوى:
31
46
 
32
47
  ```bash
33
48
  npx intlayer content list
34
49
  ```
35
50
 
51
+ ### الإخراج بتنسيق JSON:
52
+
53
+ ```bash
54
+ npx intlayer content list --json
55
+ ```
56
+
57
+ ### الإخراج كمسارات مطلقة:
58
+
59
+ ```bash
60
+ npx intlayer content list --absolute
61
+ ```
62
+
36
63
  ## مثال على الإخراج:
37
64
 
65
+ ### الإخراج المنسق:
66
+
38
67
  ```bash
39
68
  npx intlayer content list
40
69
  Content declaration files:
@@ -45,6 +74,14 @@ Content declaration files:
45
74
  إجمالي ملفات إعلان المحتوى: 3
46
75
  ```
47
76
 
77
+ ### إخراج JSON:
78
+
79
+ ```bash
80
+ $ npx intlayer content list --json
81
+
82
+ [{"key":"home-page","path":"src/components/HomePage/homePage.content.ts"},{"key":"server-component","path":"src/components/ServerComponent/serverComponent.content.ts"},{"key":"client-component","path":"src/components/ClientComponent/clientComponent.content.ts"}]
83
+ ```
84
+
48
85
  سيقوم هذا الأمر بإخراج:
49
86
 
50
87
  - قائمة منسقة بجميع ملفات إعلان المحتوى مع مفاتيحها ومسارات الملفات النسبية
@@ -0,0 +1,131 @@
1
+ ---
2
+ createdAt: 2025-12-30
3
+ updatedAt: 2026-01-06
4
+ title: قائمة مشاريع Intlayer
5
+ description: تعرّف كيف تُدرَج جميع مشاريع Intlayer في دليل أو مستودع git.
6
+ keywords:
7
+ - قائمة
8
+ - مشاريع
9
+ - CLI
10
+ - Intlayer
11
+ - Git
12
+ slugs:
13
+ - doc
14
+ - concept
15
+ - cli
16
+ - list-projects
17
+ history:
18
+ - version: 7.5.12
19
+ date: 2026-01-06
20
+ changes: إضافة خيار الإخراج المطلق إلى أمر list projects
21
+ ---
22
+
23
+ # قائمة مشاريع Intlayer
24
+
25
+ ```bash
26
+ npx intlayer projects list
27
+ ```
28
+
29
+ يبحث هذا الأمر عن جميع مشاريع Intlayer ويسردها عن طريق العثور على الأدلة التي تحتوي على ملفات تكوين Intlayer. يكون هذا مفيدًا لاكتشاف جميع مشاريع Intlayer في monorepo أو workspace أو مستودع git.
30
+
31
+ ## الاختصارات:
32
+
33
+ - `npx intlayer projects-list`
34
+ - `npx intlayer pl`
35
+
36
+ ## الوسائط:
37
+
38
+ - **`--base-dir [path]`**: حدد الدليل الأساسي للبحث منه. الافتراضي هو دليل العمل الحالي.
39
+
40
+ > مثال: `npx intlayer projects list --base-dir /path/to/workspace`
41
+
42
+ > مثال: `npx intlayer projects list --base-dir /path/to/workspace`
43
+
44
+ - **`--git-root`**: البحث من جذر git بدلاً من الدليل الأساسي. هذا مفيد للعثور على جميع مشاريع Intlayer في monorepo أو مستودع git.
45
+
46
+ > مثال: `npx intlayer projects list --git-root`
47
+
48
+ - **`--json`**: إخراج النتائج بتنسيق JSON بدلاً من النص المنسق. مفيد للبرمجة النصية والوصول البرمجي.
49
+
50
+ > مثال: `npx intlayer projects list --json`
51
+
52
+ - **`--absolute`**: إخراج النتائج كمسارات مطلقة بدلاً من المسارات النسبية.
53
+
54
+ > مثال: `npx intlayer projects list --absolute`
55
+
56
+ ## كيف يعمل:
57
+
58
+ يبحث الأمر عن ملفات تكوين Intlayer في الدليل المحدد (أو جذر git إذا تم استخدام `--git-root`). يبحث عن أنماط ملفات التكوين التالية:
59
+
60
+ - `intlayer.config.ts`
61
+ - `intlayer.config.js`
62
+ - `intlayer.config.json`
63
+ - `intlayer.config.cjs`
64
+ - `intlayer.config.mjs`
65
+ - `.intlayerrc`
66
+
67
+ يُعتبر كل دليل يحتوي على أحد هذه الملفات مشروع Intlayer وسيتم إدراجه في الناتج.
68
+
69
+ ## أمثلة:
70
+
71
+ ### سرد المشاريع في الدليل الحالي:
72
+
73
+ ```bash
74
+ npx intlayer projects list
75
+ ```
76
+
77
+ ### قائمة المشاريع في دليل محدد:
78
+
79
+ ```bash
80
+ npx intlayer projects list --base-dir ./packages
81
+ ```
82
+
83
+ ### قائمة جميع المشاريع في مستودع git:
84
+
85
+ ```bash
86
+ npx intlayer projects list --git-root
87
+ ```
88
+
89
+ ### باستخدام الاسم المختصر:
90
+
91
+ ```bash
92
+ npx intlayer pl --git-root
93
+ ```
94
+
95
+ ### الإخراج بتنسيق JSON:
96
+
97
+ ```bash
98
+ npx intlayer projects list --json
99
+ ```
100
+
101
+ ## مثال على المخرجات:
102
+
103
+ ### الإخراج المنسق:
104
+
105
+ ```bash
106
+ $ npx intlayer projects list --git-root
107
+
108
+ Found 3 Intlayer project(s):
109
+
110
+ - /Users/user/workspace/packages/app
111
+ - /Users/user/workspace/packages/admin
112
+ - /Users/user/workspace/packages/shared
113
+ ```
114
+
115
+ ### إخراج JSON:
116
+
117
+ ```bash
118
+ $ npx intlayer projects list --json
119
+
120
+ ["/Users/user/workspace/packages/app","/Users/user/workspace/packages/admin","/Users/user/workspace/packages/shared"]
121
+ ```
122
+
123
+ ## حالات الاستخدام:
124
+
125
+ - **إدارة Monorepo**: اكتشاف جميع مشاريع Intlayer في هيكلية monorepo
126
+ - **اكتشاف المشاريع**: العثور على جميع المشاريع المدعومة بواسطة Intlayer في مساحة العمل
127
+ - **CI/CD**: التحقق من مشاريع Intlayer في سير عمل مؤتمت
128
+ - **التوثيق**: توليد توثيق يسرد جميع المشاريع التي تستخدم Intlayer
129
+ - **التوثيق**: إنشاء توثيق يسرد جميع المشاريع التي تستخدم Intlayer
130
+
131
+ تُرجع المخرجات مسارات مطلقة لكل دليل مشروع، مما يسهل التنقل إليها أو تشغيل عمليات نصية (scripting) على عدة مشاريع Intlayer.
@@ -71,6 +71,26 @@ history:
71
71
 
72
72
  ## التهيئة
73
73
 
74
+ قم بتشغيل الأمر التالي لتسجيل الدخول إلى Intlayer CMS:
75
+
76
+ ```bash packageManager="npm"
77
+ npx intlayer login
78
+ ```
79
+
80
+ ```bash packageManager="yarn"
81
+ yarn intlayer login
82
+ ```
83
+
84
+ ```bash packageManager="pnpm"
85
+ pnpm intlayer login
86
+ ```
87
+
88
+ ```bash packageManager="bun"
89
+ bunx intlayer login
90
+ ```
91
+
92
+ سيؤدي هذا إلى فتح المتصفح الافتراضي الخاص بك لإكمال عملية المصادقة والحصول على بيانات الاعتماد اللازمة (معرف العميل وسر العميل) لاستخدام خدمات Intlayer.
93
+
74
94
  في ملف تهيئة Intlayer الخاص بك، يمكنك تخصيص إعدادات نظام إدارة المحتوى:
75
95
 
76
96
  ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
@@ -584,7 +584,6 @@ const config: IntlayerConfig = {
584
584
  },
585
585
  plugins: [
586
586
  syncJSON({
587
- format: "i18next",
588
587
  source: ({ locale }) => `./locales/${locale}.json`,
589
588
  }),
590
589
  ],
@@ -74,6 +74,34 @@ bunx intlayer init
74
74
 
75
75
  ### الخطوة 2: تكوين مشروعك
76
76
 
77
+ Here is the final structure that we will make:
78
+
79
+ ```bash
80
+ .
81
+ ├── src
82
+ │ ├── app
83
+ │ │ ├── [locale]
84
+ │ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
85
+ │ │ │ ├── page.content.ts
86
+ │ │ │ └── page.tsx
87
+ │ │ └── layout.tsx # Root layout for style and global providers
88
+ │ ├── components
89
+ │ │ ├── client-component-example.content.ts
90
+ │ │ ├── ClientComponentExample.tsx
91
+ │ │ ├── LocaleSwitcher
92
+ │ │ │ ├── localeSwitcher.content.ts
93
+ │ │ │ └── LocaleSwitcher.tsx
94
+ │ │ ├── server-component-example.content.ts
95
+ │ │ └── ServerComponentExample.tsx
96
+ │ └── middleware.ts
97
+ ├── intlayer.config.ts
98
+ ├── next.config.ts
99
+ ├── package.json
100
+ └── tsconfig.json
101
+ ```
102
+
103
+ > If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
104
+
77
105
  قم بإنشاء ملف تكوين لتحديد لغات تطبيقك:
78
106
 
79
107
  ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
@@ -84,6 +84,34 @@ bunx intlayer init
84
84
 
85
85
  ### الخطوة 2: تكوين مشروعك
86
86
 
87
+ Here is the final structure that we will make:
88
+
89
+ ```bash
90
+ .
91
+ ├── src
92
+ │ ├── app
93
+ │ │ ├── [locale]
94
+ │ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
95
+ │ │ │ ├── page.content.ts
96
+ │ │ │ └── page.tsx
97
+ │ │ └── layout.tsx # Root layout for style and global providers
98
+ │ ├── components
99
+ │ │ ├── client-component-example.content.ts
100
+ │ │ ├── ClientComponentExample.tsx
101
+ │ │ ├── LocaleSwitcher
102
+ │ │ │ ├── localeSwitcher.content.ts
103
+ │ │ │ └── LocaleSwitcher.tsx
104
+ │ │ ├── server-component-example.content.ts
105
+ │ │ └── ServerComponentExample.tsx
106
+ │ └── middleware.ts
107
+ ├── intlayer.config.ts
108
+ ├── next.config.ts
109
+ ├── package.json
110
+ └── tsconfig.json
111
+ ```
112
+
113
+ > If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
114
+
87
115
  أنشئ ملف تكوين لتكوين لغات تطبيقك:
88
116
 
89
117
  ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
@@ -104,6 +104,34 @@ bunx intlayer init
104
104
 
105
105
  ### الخطوة 2: تكوين مشروعك
106
106
 
107
+ Here is the final structure that we will make:
108
+
109
+ ```bash
110
+ .
111
+ ├── src
112
+ │ ├── app
113
+ │ │ ├── [locale]
114
+ │ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
115
+ │ │ │ ├── page.content.ts
116
+ │ │ │ └── page.tsx
117
+ │ │ └── layout.tsx # Root layout for style and global providers
118
+ │ ├── components
119
+ │ │ ├── client-component-example.content.ts
120
+ │ │ ├── ClientComponentExample.tsx
121
+ │ │ ├── LocaleSwitcher
122
+ │ │ │ ├── localeSwitcher.content.ts
123
+ │ │ │ └── LocaleSwitcher.tsx
124
+ │ │ ├── server-component-example.content.ts
125
+ │ │ └── ServerComponentExample.tsx
126
+ │ └── proxy.ts
127
+ ├── intlayer.config.ts
128
+ ├── next.config.ts
129
+ ├── package.json
130
+ └── tsconfig.json
131
+ ```
132
+
133
+ > If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
134
+
107
135
  أنشئ ملف تكوين لتحديد لغات تطبيقك:
108
136
 
109
137
  ```typescript fileName="intlayer.config.ts" codeFormat="typescript"