@intlayer/docs 6.0.0 → 6.0.2-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 (104) hide show
  1. package/dist/cjs/blog.cjs.map +1 -1
  2. package/dist/cjs/common.cjs +6 -5
  3. package/dist/cjs/common.cjs.map +1 -1
  4. package/dist/cjs/generated/blog.entry.cjs +318 -1863
  5. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  6. package/dist/cjs/generated/docs.entry.cjs +1317 -6282
  7. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  8. package/dist/cjs/generated/frequentQuestions.entry.cjs +197 -1182
  9. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  10. package/dist/cjs/generated/legal.entry.cjs +43 -84
  11. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  12. package/dist/esm/blog.mjs.map +1 -1
  13. package/dist/esm/common.mjs +2 -5
  14. package/dist/esm/common.mjs.map +1 -1
  15. package/dist/esm/generated/blog.entry.mjs +318 -1863
  16. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  17. package/dist/esm/generated/docs.entry.mjs +1317 -6282
  18. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  19. package/dist/esm/generated/frequentQuestions.entry.mjs +197 -1182
  20. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  21. package/dist/esm/generated/legal.entry.mjs +43 -84
  22. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  23. package/dist/types/blog.d.ts +1 -1
  24. package/dist/types/blog.d.ts.map +1 -1
  25. package/dist/types/common.d.ts +1 -1
  26. package/dist/types/common.d.ts.map +1 -1
  27. package/dist/types/generated/blog.entry.d.ts +1 -1
  28. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  29. package/dist/types/generated/docs.entry.d.ts +2 -1
  30. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  31. package/dist/types/generated/frequentQuestions.entry.d.ts +1 -1
  32. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  33. package/dist/types/generated/legal.entry.d.ts +1 -1
  34. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  35. package/docs/ar/intlayer_CMS.md +261 -85
  36. package/docs/ar/releases/v6.md +273 -0
  37. package/docs/ar/roadmap.md +1 -3
  38. package/docs/ar/vs_code_extension.md +94 -63
  39. package/docs/de/intlayer_CMS.md +247 -65
  40. package/docs/de/releases/v6.md +298 -0
  41. package/docs/de/roadmap.md +1 -3
  42. package/docs/de/vs_code_extension.md +89 -58
  43. package/docs/en/configuration.md +9 -2
  44. package/docs/en/intlayer_CMS.md +205 -23
  45. package/docs/en/intlayer_cli.md +4 -4
  46. package/docs/en/intlayer_visual_editor.md +7 -6
  47. package/docs/en/intlayer_with_nextjs_14.md +17 -1
  48. package/docs/en/intlayer_with_nextjs_15.md +17 -1
  49. package/docs/en/releases/v6.md +268 -0
  50. package/docs/en/roadmap.md +1 -3
  51. package/docs/en/vs_code_extension.md +79 -49
  52. package/docs/en-GB/intlayer_CMS.md +216 -52
  53. package/docs/en-GB/releases/v6.md +297 -0
  54. package/docs/en-GB/roadmap.md +1 -3
  55. package/docs/en-GB/vs_code_extension.md +79 -48
  56. package/docs/es/intlayer_CMS.md +257 -84
  57. package/docs/es/releases/v6.md +274 -0
  58. package/docs/es/roadmap.md +1 -3
  59. package/docs/es/vs_code_extension.md +90 -60
  60. package/docs/fr/intlayer_CMS.md +250 -68
  61. package/docs/fr/releases/v6.md +274 -0
  62. package/docs/fr/roadmap.md +1 -3
  63. package/docs/fr/vs_code_extension.md +94 -63
  64. package/docs/hi/intlayer_CMS.md +253 -77
  65. package/docs/hi/releases/v6.md +273 -0
  66. package/docs/hi/roadmap.md +1 -3
  67. package/docs/hi/vs_code_extension.md +92 -61
  68. package/docs/it/intlayer_CMS.md +251 -73
  69. package/docs/it/releases/v6.md +273 -0
  70. package/docs/it/roadmap.md +1 -3
  71. package/docs/it/vs_code_extension.md +94 -63
  72. package/docs/ja/intlayer_CMS.md +282 -97
  73. package/docs/ja/releases/v6.md +273 -0
  74. package/docs/ja/roadmap.md +1 -3
  75. package/docs/ja/vs_code_extension.md +99 -68
  76. package/docs/ko/intlayer_CMS.md +267 -93
  77. package/docs/ko/releases/v6.md +273 -0
  78. package/docs/ko/roadmap.md +1 -3
  79. package/docs/ko/vs_code_extension.md +88 -57
  80. package/docs/pt/intlayer_CMS.md +261 -83
  81. package/docs/pt/releases/v6.md +273 -0
  82. package/docs/pt/roadmap.md +1 -3
  83. package/docs/pt/vs_code_extension.md +89 -58
  84. package/docs/ru/intlayer_CMS.md +240 -65
  85. package/docs/ru/releases/v6.md +274 -0
  86. package/docs/ru/roadmap.md +1 -1
  87. package/docs/ru/vs_code_extension.md +83 -52
  88. package/docs/tr/intlayer_CMS.md +278 -96
  89. package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
  90. package/docs/tr/intlayer_with_tanstack.md +3 -0
  91. package/docs/tr/releases/v6.md +273 -0
  92. package/docs/tr/roadmap.md +1 -1
  93. package/docs/tr/vs_code_extension.md +100 -71
  94. package/docs/zh/intlayer_CMS.md +257 -76
  95. package/docs/zh/releases/v6.md +273 -0
  96. package/docs/zh/roadmap.md +1 -3
  97. package/docs/zh/vs_code_extension.md +99 -68
  98. package/package.json +9 -8
  99. package/src/blog.ts +1 -1
  100. package/src/common.ts +2 -6
  101. package/src/generated/blog.entry.ts +323 -1864
  102. package/src/generated/docs.entry.ts +1317 -6278
  103. package/src/generated/frequentQuestions.entry.ts +202 -1183
  104. package/src/generated/legal.entry.ts +48 -85
@@ -0,0 +1,273 @@
1
+ ---
2
+ createdAt: 2025-09-22
3
+ updatedAt: 2025-09-22
4
+ title: الإصدار الجديد Intlayer v6 - ما الجديد؟
5
+ description: اكتشف ما الجديد في Intlayer v6. تحسينات كبيرة في الأداء، تجربة المطور، وميزات جديدة لتعزيز سير عمل التدويل الخاص بك.
6
+ keywords:
7
+ - Intlayer
8
+ - التوطين
9
+ - التطوير
10
+ - الأداء
11
+ - تجربة المطور
12
+ - الميزات
13
+ - React
14
+ - Next.js
15
+ - JavaScript
16
+ - TypeScript
17
+ slugs:
18
+ - doc
19
+ - releases
20
+ - v6
21
+ ---
22
+
23
+ # الإصدار الجديد Intlayer v6 - ما الجديد؟
24
+
25
+ مرحبًا بك في Intlayer v6! يركز هذا الإصدار على الأداء، تجربة المطور، والموثوقية. فيما يلي أبرز النقاط، مع ملاحظات الترحيل وأمثلة قابلة للنسخ واللصق.
26
+
27
+ ## أبرز النقاط
28
+
29
+ - أمر جديد: `npx intlayer content test` لاكتشاف الترجمات المفقودة
30
+ - خيار عالمي جديد `autoFill` لتوليد الترجمات المفقودة تلقائيًا
31
+ - أمر التعبئة (Fill) يتخطى الترجمات الموجودة بشكل افتراضي: `npx intlayer fill`
32
+ - امتداد VS Code: شريط نشاط Intlayer جديد (بحث وقواميس)، أزرار شريط الأدوات/السياق، الكشف التلقائي، أوامر التعبئة/الاختبار
33
+ - بناء أسرع 10 مرات بفضل التوازي في الوعود (promise parallelization)
34
+ - تخزين مؤقت للقاموس عن بُعد لتجنب إعادة التحميل عند بدء التطبيق
35
+ - تحسين التسجيل: اضبط `log.mode: 'verbose'` لفحص السلوك
36
+ - تحقق أقوى لمنع تعطل التطبيق بسبب مشاكل في القاموس
37
+ - تحديثات حية مع نظام إدارة المحتوى (CMS) باستخدام `build.importMode = 'live'` و `pnpm intlayer live`
38
+ - إصلاحات: تكامل Vue.js، محول Lynx، المحرر المرئي على ويندوز
39
+
40
+ ---
41
+
42
+ ## جديد: اختبار الترجمات المفقودة
43
+
44
+ قم بتدقيق مشروعك بسرعة لمعرفة المفاتيح/اللغات المفقودة.
45
+
46
+ ```bash
47
+ npx intlayer content test
48
+ ```
49
+
50
+ الإخراج:
51
+
52
+ ```bash
53
+ pnpm intlayer content test
54
+ الترجمات المفقودة:
55
+ - blog-data - اليابانية (ja)، الكورية (ko)، الصينية (zh)، الألمانية (de)، الإيطالية (it) - src/components/BlogPage/blogData.content.ts
56
+ - demo-page - الفرنسية (fr)، الإيطالية (it) - src/components/DemoPage/demo.content.ts
57
+ - locale-switcher - الإيطالية (it)، البرتغالية (pt) - src/components/LocaleSwitcher/localeSwitcher.content.ts
58
+ اللغات: الإنجليزية (en)، الروسية (ru)، اليابانية (ja)، الفرنسية (fr)، الكورية (ko)، الصينية (zh)، الإسبانية (es)، الألمانية (de)، العربية (ar)، الإيطالية (it)، الإنجليزية البريطانية (en-GB)، البرتغالية (pt)، الهندية (hi)
59
+ اللغات المطلوبة: الإنجليزية (en)
60
+ اللغات المفقودة: اليابانية (ja)، الكورية (ko)، الصينية (zh)، الألمانية (de)، الإيطالية (it)، الفرنسية (fr)، البرتغالية (pt)
61
+ اللغات المطلوبة المفقودة: -
62
+ إجمالي اللغات المفقودة: 7
63
+ إجمالي اللغات المطلوبة المفقودة: 0
64
+ ```
65
+
66
+ راجع المزيد من الخيارات في وثائق CLI: [مرجع CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_cli.md) → "اختبار الترجمات المفقودة". وكذلك دليل [الاختبار](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/testing.md).
67
+
68
+ ---
69
+
70
+ ## جديد: التعبئة التلقائية العالمية لإكمال الترجمات المفقودة
71
+
72
+ يمكنك الآن تمكين التعبئة التلقائية على مستوى العالم بحيث يتم إكمال أي قاموس يحتوي على ترجمات مفقودة تلقائيًا.
73
+
74
+ ```ts fileName="intlayer.config.ts"
75
+ import { type IntlayerConfig, Locales } from "intlayer";
76
+
77
+ const config: IntlayerConfig = {
78
+ internationalization: {
79
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
80
+ defaultLocale: Locales.ENGLISH,
81
+ requiredLocales: [Locales.ENGLISH, Locales.FRENCH],
82
+ },
83
+ content: {
84
+ // توليد تلقائي للترجمات المفقودة لجميع القواميس
85
+ autoFill: "./{{fileName}}.content.ts",
86
+ //
87
+ // autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json",
88
+ //
89
+ // autoFill: true, // توليد تلقائي للترجمات المفقودة لجميع القواميس مثل استخدام "./{{fileName}}.content.json"
90
+ //
91
+ // autoFill: {
92
+ // en: "./{{fileName}}.en.content.json",
93
+ // fr: "./{{fileName}}.fr.content.json",
94
+ // es: "./{{fileName}}.es.content.json",
95
+ // },
96
+ },
97
+ };
98
+
99
+ export default config;
100
+ ```
101
+
102
+ يمكنك أيضًا ضبط كل قاموس بدقة باستخدام حقل `autoFill` في ملفات المحتوى. راجع المرجع الكامل في `doc/autoFill` و `doc/dictionary/content_file`.
103
+
104
+ ---
105
+
106
+ ## أمر fill: إعدادات افتراضية أكثر أمانًا
107
+
108
+ أمر fill الآن، بشكل افتراضي، يملأ الترجمات المفقودة فقط ويتخطى المحتوى الموجود.
109
+
110
+ ```bash
111
+ npx intlayer fill
112
+ ```
113
+
114
+ ```bash
115
+ المفاتيح المتأثرة في القواميس للمعالجة: access-key-creation-form-schema, doc-search-metadata, doc-search-page
116
+ - [access-key-creation-form-schema] القاموس لا يحتوي على مسار ملف. يتم التخطي.
117
+ - [access-key-creation-form-schema] معالجة إعلان المحتوى: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts
118
+ - [access-key-creation-form-schema] لا توجد لغات لملئها - يتم تخطي القاموس
119
+ - [doc-search-metadata] القاموس لا يحتوي على مسار ملف. يتم التخطي.
120
+ - [doc-search-metadata] معالجة إعلان المحتوى: src/app/[locale]/(docs)/doc/search/metadata.content.ts
121
+ - [doc-search-metadata] لا توجد لغات لملئها - يتم تخطي القاموس
122
+ - [doc-search-page] القاموس لا يحتوي على مسار ملف. يتم التخطي.
123
+ - [doc-search-page] معالجة إعلان المحتوى: src/app/[locale]/(docs)/doc/search/page.content.ts
124
+ - [doc-search-page] [الروسية (ru)] تجهيز الترجمة للقاموس من الإنجليزية (en) إلى الروسية (ru)
125
+ [intlayer] تم تطبيق تنسيق Prettier على src/app/[locale]/(docs)/doc/search/page.content.ts
126
+ - [doc-search-page] تم كتابة إعلان المحتوى إلى src/app/[locale]/(docs)/doc/search/page.content.ts
127
+ ```
128
+
129
+ أمثلة CI متاحة في [CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/CI_CD.md).
130
+
131
+ ---
132
+
133
+ ## تحديث امتداد VS Code
134
+
135
+ يتضمن الامتداد الآن تبويب مخصص لـ Intlayer في شريط النشاط وعدة تحسينات في سير العمل:
136
+
137
+ - شريط نشاط Intlayer مع عرضين:
138
+ - عرض ويب البحث (`intlayer.searchBar`) للبحث المباشر في القاموس/المحتوى
139
+ - شجرة القواميس (`intlayer.dictionaries`) التي تعرض البيئات، القواميس، والملفات المساهمة
140
+ - شريط أدوات في عرض القواميس: بناء، سحب، دفع، ملء، تحديث، اختبار، إنشاء ملف قاموس
141
+ - قوائم السياق: سحب/دفع على القواميس؛ ملء على الملفات
142
+ - الكشف التلقائي: يتم تمييز ملف المحرر الحالي في شجرة القواميس عند الاقتضاء
143
+ - أوامر جديدة متاحة من لوحة الأوامر: ملء القواميس واختبار القواميس
144
+
145
+ راجع التفاصيل في توثيق [امتداد VS Code الرسمي](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/vs_code_extension.md).
146
+
147
+ ---
148
+
149
+ ## الأداء: أسرع 10 مرات
150
+
151
+ - حل متوازي للقواميس المحلية والبعيدة
152
+ - يتم تخزين القواميس البعيدة مؤقتًا لتجنب إعادة الجلب عند بدء تشغيل التطبيق
153
+
154
+ ```bash
155
+ npx intlayer build
156
+ ```
157
+
158
+ المخرجات:
159
+
160
+ ```bash
161
+ [intlayer] Preparing Intlayer (v6.0.1)
162
+ [intlayer] Dictionaries:
163
+ [intlayer] ✓ Local content: 163/163
164
+ [intlayer] ✓ Remote content: 100/100
165
+ [intlayer] - access-key-creation-form [local: ✔ built] [distant: ✔ imported]
166
+ [intlayer] - access-key-creation-form-schema [local: ✔ built] [distant: ✔ imported]
167
+ [intlayer] - access-key-form [local: ✔ built] [distant: ✔ imported]
168
+ [intlayer] - ai-ab-testing-section [distant: ✔ imported]
169
+ [intlayer] - application-not-running-view [local: ✔ built] [distant: ✔ imported]
170
+ [intlayer] - application-template-message [local: ✔ built] [distant: ✔ fetched]
171
+ [intlayer] - aside-navigation [local: ✔ built] [distant: ✔ imported]
172
+ [intlayer] - ask-reset-password [local: ✔ built] [distant: ✔ imported]
173
+ [intlayer] - ask-reset-password-schema [local: ✔ built] [distant: ✔ imported]
174
+ [intlayer] - autocompletion-section [local: ✔ built] [distant: ✔ fetched]
175
+ [intlayer] - available-techno-section [local: ✔ built] [distant: ✔ imported]
176
+ [intlayer] - blog-data [local: ✔ built]
177
+ [intlayer] - blog-metadata [local: ✔ built]
178
+ [intlayer] - blog-nav-list [local: ✔ built] [distant: ✔ imported]
179
+ [intlayer] - blog-page [distant: ✔ fetched]
180
+ [intlayer] - blog-search-metadata [local: ✔ built] [distant: ✔ imported]
181
+ [intlayer] - blog-search-page [local: ✔ built] [distant: ✔ imported]
182
+ ...
183
+ [intlayer] تم تحميل المحتوى (الإجمالي: 8401 مللي ثانية - محلي: 4050 مللي ثانية - عن بُعد: 4222 مللي ثانية)
184
+ ```
185
+
186
+ ---
187
+
188
+ ## تحسينات التسجيل
189
+
190
+ تم تحسين نظام التسجيل لتوفير معلومات أكثر تفصيلاً حول ما يحدث أثناء عمليات التحويل في وقت البناء والتشغيل.
191
+
192
+ > قم بتمكين السجلات المفصلة لفهم أفضل لما يحدث أثناء عمليات التحويل في وقت البناء والتشغيل.
193
+
194
+ ```ts fileName="intlayer.config.ts"
195
+ export default {
196
+ log: {
197
+ mode: "verbose", // الخيارات: "default" | "verbose" | "disabled"
198
+ },
199
+ };
200
+ ```
201
+
202
+ راجع [التكوين](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/configuration.md) لجميع خيارات التسجيل.
203
+
204
+ ---
205
+
206
+ ## تحقق أقوى
207
+
208
+ يقوم الآن معالجة القاموس بإجراء تحقق أكثر صلابة. عندما يفشل القاموس في المعالجة، يتجنب Intlayer كسر تطبيقك ويعرض أخطاء قابلة للتنفيذ.
209
+
210
+ ---
211
+
212
+ ## التحديثات الحية مع نظام إدارة المحتوى (آمن للإنتاج)
213
+
214
+ قم بتقديم تحديثات المحتوى الحية (مثل التحديثات التحريرية) في بيئة الإنتاج دون الحاجة إلى إعادة بناء تطبيقك.
215
+
216
+ 1. قم بتمكين وضع الاستيراد الحي:
217
+
218
+ ```ts fileName="intlayer.config.ts"
219
+ import { type IntlayerConfig } from "intlayer";
220
+
221
+ const config: IntlayerConfig = {
222
+ build: {
223
+ importMode: "live", // "static" | "dynamic" | "live"
224
+ },
225
+ editor: {
226
+ liveSync: true, // تمكين المزامنة الحية على جانب الخادم
227
+ },
228
+ };
229
+
230
+ export default config;
231
+ ```
232
+
233
+ 2. قم بتشغيل تطبيقك والمعالجة الحية جنبًا إلى جنب:
234
+
235
+ ```bash
236
+ npx intlayer live --process 'vite preview'
237
+ ```
238
+
239
+ ملاحظات:
240
+
241
+ - سيتم جلب القواميس التي تم تمييزها لاستخدام الوضع الحي فقط بشكل مباشر. أما القواميس الأخرى فهي محسّنة للأداء.
242
+ - يتم الرجوع إلى الاستيراد الديناميكي إذا لم يكن من الممكن الوصول إلى واجهة برمجة التطبيقات الحية.
243
+
244
+ راجع [نظام إدارة المحتوى والمزامنة الحية](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_CMS.md) و [التكوين](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/configuration.md) للحصول على إرشادات كاملة.
245
+
246
+ ---
247
+
248
+ ## ملاحظات الترحيل
249
+
250
+ - تمت الإزالة: `dictionaryOutput` (كان يُستخدم سابقًا مع `i18next` أو `next-intl`). سيعود هذا كموصلات قابلة للإضافة في الإصدارات المستقبلية. قم بإزالة هذا الحقل من تكوينك.
251
+ - إزالة ذات صلة: `i18nextResourcesDir` (راجع سجل التغييرات في `doc/configuration`).
252
+ - يُفضل استخدام الخيار العالمي الجديد `content.autoFill` لتوليد الترجمات المفقودة على نطاق واسع.
253
+ - استخدم الأمر `npx intlayer content test` للتحقق من طلبات السحب (PRs) المتعلقة بالترجمات المفقودة.
254
+ - للحصول على تشخيص مفصل، قم بتعيين `log.mode = 'verbose'`.
255
+
256
+ ---
257
+
258
+ ## الإصلاحات
259
+
260
+ - استقرار تكامل Vue.js
261
+ - تحسينات موصل Lynx
262
+ - المحرر المرئي على نظام ويندوز
263
+
264
+ ---
265
+
266
+ ## روابط مفيدة
267
+
268
+ - [مرجع CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_cli.md)
269
+ - [الملء التلقائي](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/autoFill.md)
270
+ - [التكوين](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/configuration.md)
271
+ - [مرجع ملف المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_file.md)
272
+ - [امتداد VS Code الرسمي](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/vs_code_extension.md)
273
+ - [نظام إدارة المحتوى والمزامنة الحية](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_CMS.md)
@@ -111,18 +111,16 @@ Intlayer هو حل لإدارة المحتوى والتدويل مصمم لتب
111
111
  يدعم Intlayer صيغة **TypeScript** (وكذلك JavaScript) و **JSON** لإعلان المحتوى.
112
112
 
113
113
  - **TypeScript**:
114
-
115
114
  - يضمن أن هيكل المحتوى الخاص بك صحيح وأنه لا توجد ترجمات مفقودة.
116
115
  - يقدم أوضاع تحقق صارمة أو أكثر مرونة.
117
116
  - يسمح بجلب البيانات ديناميكيًا من المتغيرات أو الدوال أو واجهات برمجة التطبيقات الخارجية.
118
117
 
119
118
  - **JSON**:
120
-
121
119
  - يجعل من السهل التكامل مع الأدوات الخارجية (مثل المحررين المرئيين) بسبب تنسيقه الموحد.
122
120
 
123
121
  > الموارد:
124
122
  >
125
- > - [تنسيقات إعلان المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_extention_customization.md)
123
+ > - [تنسيقات إعلان المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_file.md)
126
124
 
127
125
  ### 7. التنقية، تحسين الحزمة والاستيراد الديناميكي
128
126
 
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  createdAt: 2025-03-17
3
- updatedAt: 2025-06-29
4
- title: إضافة VS Code الرسمية
5
- description: تعلّم كيفية استخدام إضافة Intlayer في VS Code لتعزيز سير عمل التطوير الخاص بك. تنقل بسرعة بين المحتوى المحلي وأدر قواميسك بكفاءة.
3
+ updatedAt: 2025-09-22
4
+ title: ملحق VS Code الرسمي
5
+ description: تعلّم كيفية استخدام ملحق Intlayer في VS Code لتعزيز سير عمل التطوير الخاص بك. تنقل بسرعة بين المحتوى المحلي وأدر القواميس الخاصة بك بكفاءة.
6
6
  keywords:
7
- - إضافة VS Code
7
+ - ملحق VS Code
8
8
  - Intlayer
9
9
  - التوطين
10
10
  - أدوات التطوير
@@ -17,41 +17,89 @@ slugs:
17
17
  - vs-code-extension
18
18
  ---
19
19
 
20
- # إضافة VS Code الرسمية
20
+ # ملحق VS Code الرسمي
21
21
 
22
22
  ## نظرة عامة
23
23
 
24
- [**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) هي الإضافة الرسمية لـ Visual Studio Code لـ **Intlayer**، مصممة لتحسين تجربة المطور عند العمل مع المحتوى المحلي في مشاريعك.
24
+ [**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) هو الملحق الرسمي لـ Visual Studio Code الخاص بـ **Intlayer**، مصمم لتحسين تجربة المطور عند العمل مع المحتوى المحلي في مشاريعك.
25
25
 
26
- ![إضافة Intlayer لـ VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/assets/vs_code_extension_demo.gif)
26
+ ![ملحق Intlayer لـ VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/assets/vs_code_extension_demo.gif)
27
27
 
28
- رابط الإضافة: [https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension)
28
+ رابط الملحق: [https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension)
29
29
 
30
30
  ## الميزات
31
31
 
32
32
  ### التنقل الفوري
33
33
 
34
- **دعم الانتقال إلى التعريف** – استخدم `Cmd+Click` (لنظام ماك) أو `Ctrl+Click` (لنظام ويندوز/لينكس) على مفتاح `useIntlayer` لفتح ملف المحتوى المقابل فورًا.
34
+ **دعم الانتقال إلى التعريف** – استخدم `⌘ + Click` (ماك) أو `Ctrl + Click` (ويندوز/لينكس) على مفتاح `useIntlayer` لفتح ملف المحتوى المقابل فورًا.
35
35
  **تكامل سلس** – يعمل بسهولة مع مشاريع **react-intlayer** و **next-intlayer**.
36
36
  **دعم متعدد اللغات** – يدعم المحتوى المحلي عبر لغات مختلفة.
37
- **تكامل مع VS Code** – يندمج بسلاسة مع نظام التنقل ولوحة الأوامر في VS Code.
37
+ **تكامل مع VS Code** – يندمج بسلاسة مع التنقل ولوحة الأوامر في VS Code.
38
38
 
39
39
  ### أوامر إدارة القواميس
40
40
 
41
41
  قم بإدارة قواميس المحتوى الخاصة بك مباشرة من VS Code:
42
42
 
43
- - **إنشاء القواميس** (`extension.buildDictionaries`) – توليد ملفات المحتوى بناءً على هيكل مشروعك.
44
- - **دفع القواميس** (`extension.pushDictionaries`) – رفع أحدث محتوى القاموس إلى مستودعك.
45
- - **سحب القواميس** (`extension.pullDictionaries`) – مزامنة أحدث محتوى القاموس من مستودعك إلى بيئتك المحلية.
43
+ - **إنشاء القواميس** – توليد ملفات المحتوى بناءً على هيكل مشروعك.
44
+ - **دفع القواميس** – رفع أحدث محتوى القاموس إلى مستودعك.
45
+ - **سحب القواميس** – مزامنة أحدث محتوى القاموس من مستودعك إلى بيئتك المحلية.
46
+ - **ملء القواميس** – تعبئة القواميس بالمحتوى من مشروعك.
47
+ - **اختبار القواميس** – تحديد الترجمات المفقودة أو غير المكتملة.
46
48
 
47
49
  ### مولد إعلان المحتوى
48
50
 
49
- قم بسهولة بإنشاء ملفات قاموس منظمة بصيغ مختلفة:
51
+ قم بسهولة بتوليد ملفات قاموس منظمة بصيغ مختلفة:
50
52
 
51
- - **TypeScript (`.ts`)** `extension.createDictionaryFile.ts`
52
- - **ES Module (`.esm`)** – `extension.createDictionaryFile.esm`
53
- - **CommonJS (`.cjs`)** – `extension.createDictionaryFile.cjs`
54
- - **JSON (`.json`)** – `extension.createDictionaryFile.json`
53
+ إذا كنت تعمل حاليًا على مكون، فسيتم إنشاء ملف `.content.{ts,tsx,js,jsx,mjs,cjs,json}` لك.
54
+
55
+ مثال على مكون:
56
+
57
+ ```tsx fileName="src/components/MyComponent/index.tsx"
58
+ const MyComponent = () => {
59
+ const { myTranslatedContent } = useIntlayer("my-component");
60
+
61
+ return <span>{myTranslatedContent}</span>;
62
+ };
63
+ ```
64
+
65
+ الملف المُولد بصيغة TypeScript:
66
+
67
+ ```tsx fileName="src/components/MyComponent/index.content.ts"
68
+ import { t, type Dictionary } from "intlayer";
69
+
70
+ const componentContent = {
71
+ key: "my-component",
72
+ content: {
73
+ myTranslatedContent: t({
74
+ en: "Hello World",
75
+ es: "Hola Mundo",
76
+ fr: "Bonjour le monde",
77
+ }),
78
+ },
79
+ };
80
+
81
+ export default componentContent;
82
+ ```
83
+
84
+ الصيغ المتاحة:
85
+
86
+ - **TypeScript (`.ts`)**
87
+ - **وحدة ES (`.esm`)**
88
+ - **CommonJS (`.cjs`)**
89
+ - **JSON (`.json`)**
90
+
91
+ ### تبويب Intlayer (شريط النشاط)
92
+
93
+ افتح تبويب Intlayer بالنقر على أيقونة Intlayer في شريط نشاط VS Code. يحتوي على عرضين:
94
+
95
+ - **بحث**: شريط بحث مباشر لتصفية القواميس ومحتواها بسرعة. الكتابة تحدث النتائج فورًا.
96
+ - **القواميس**: عرض شجري لبيئاتك/مشاريعك، مفاتيح القواميس، والملفات التي تساهم بالإدخالات. يمكنك:
97
+ - النقر على ملف لفتحه في المحرر.
98
+ - استخدام شريط الأدوات لتنفيذ الأوامر: بناء، سحب، دفع، تعبئة، تحديث، اختبار، وإنشاء ملف قاموس.
99
+ - استخدام قائمة السياق لإجراءات محددة على العنصر:
100
+ - على قاموس: سحب أو دفع
101
+ - على ملف: تعبئة القاموس
102
+ - عند تبديل المحررات، سيكشف العرض الشجري عن الملف المطابق إذا كان ينتمي إلى قاموس.
55
103
 
56
104
  ## التثبيت
57
105
 
@@ -60,30 +108,32 @@ slugs:
60
108
  1. افتح **VS Code**.
61
109
  2. اذهب إلى **سوق الإضافات**.
62
110
  3. ابحث عن **"Intlayer"**.
63
- 4. اضغط على **تثبيت**.
64
-
65
- بدلاً من ذلك، قم بتثبيته عبر سطر الأوامر:
66
-
67
- ```sh
68
- code --install-extension intlayer
69
- ```
111
+ 4. انقر على **تثبيت**.
70
112
 
71
113
  ## الاستخدام
72
114
 
73
115
  ### التنقل السريع
74
116
 
75
117
  1. افتح مشروعًا يستخدم **react-intlayer**.
76
- 2. حدد موقع استدعاء `useIntlayer()`، مثل:
118
+ 2. حدد مكالمة إلى `useIntlayer()`، مثل:
77
119
 
78
120
  ```tsx
79
121
  const content = useIntlayer("app");
80
122
  ```
81
123
 
82
- 3. **انقر مع الضغط على الأمر** (`⌘+Click` على macOS) أو **انقر مع الضغط على Ctrl** (على Windows/Linux) على المفتاح (مثل `"app"`).
83
- 4. سيقوم VS Code بفتح ملف القاموس المقابل تلقائيًا، مثل `src/app.content.ts`.
124
+ 3. **انقر مع الضغط على الأمر** (`⌘+Click` على macOS) أو **Ctrl+Click** (على Windows/Linux) على المفتاح (مثل `"app"`).
125
+ 4. سيفتح VS Code تلقائيًا ملف القاموس المقابل، مثل `src/app.content.ts`.
84
126
 
85
127
  ### إدارة قواميس المحتوى
86
128
 
129
+ ### تبويب Intlayer (شريط النشاط)
130
+
131
+ استخدم التبويب الجانبي لتصفح وإدارة القواميس:
132
+
133
+ - افتح أيقونة Intlayer في شريط النشاط.
134
+ - في **البحث**، اكتب لتصفية القواميس والإدخالات في الوقت الحقيقي.
135
+ - في **القواميس**، تصفح البيئات والقواميس والملفات. استخدم شريط الأدوات للبناء، السحب، الدفع، الملء، التحديث، الاختبار، وإنشاء ملف القاموس. انقر بزر الماوس الأيمن للحصول على إجراءات السياق (السحب/الدفع على القواميس، الملء على الملفات). يتم الكشف تلقائيًا عن ملف المحرر الحالي في الشجرة عند الاقتضاء.
136
+
87
137
  #### بناء القواميس
88
138
 
89
139
  قم بإنشاء جميع ملفات محتوى القاموس باستخدام:
@@ -96,7 +146,7 @@ Cmd + Shift + P (macOS) / Ctrl + Shift + P (Windows/Linux)
96
146
 
97
147
  #### دفع القواميس
98
148
 
99
- ارفع أحدث محتوى القاموس:
149
+ قم بتحميل أحدث محتوى القاموس:
100
150
 
101
151
  1. افتح **لوحة الأوامر**.
102
152
  2. ابحث عن **Push Dictionaries**.
@@ -104,49 +154,30 @@ Cmd + Shift + P (macOS) / Ctrl + Shift + P (Windows/Linux)
104
154
 
105
155
  #### سحب القواميس
106
156
 
107
- زامن أحدث محتوى القاموس:
157
+ مزامنة أحدث محتوى القاموس:
108
158
 
109
159
  1. افتح **لوحة الأوامر**.
110
160
  2. ابحث عن **Pull Dictionaries**.
111
161
  3. اختر القواميس التي تريد سحبها.
112
162
 
113
- ## التطوير والمساهمة
114
-
115
- هل ترغب في المساهمة؟ نرحب بمساهمات المجتمع!
116
-
117
- رابط المستودع: https://github.com/aymericzip/intlayer-vs-code-extension
163
+ #### ملء القواميس
118
164
 
119
- ### البدء
120
-
121
- استنسخ المستودع وقم بتثبيت التبعيات:
122
-
123
- ```sh
124
- git clone https://github.com/aymericzip/intlayer-vs-code-extension.git
125
- cd intlayer-vs-code-extension
126
- npm install
127
- ```
165
+ املأ القواميس بالمحتوى من مشروعك:
128
166
 
129
- > استخدم مدير الحزم `npm` للتوافق مع حزمة `vsce` لبناء ونشر الإضافة.
130
-
131
- ### التشغيل في وضع التطوير
132
-
133
- 1. افتح المشروع في **VS Code**.
134
- 2. اضغط على `F5` لفتح نافذة جديدة لـ **مضيف تطوير الإضافة**.
135
-
136
- ### تقديم طلب سحب
137
-
138
- إذا قمت بتحسين الإضافة، قدم طلب سحب على [GitHub](https://github.com/aymericzip/intlayer-vs-code-extension).
139
-
140
- ## الملاحظات والمشاكل
141
-
142
- هل وجدت خطأً أو لديك طلب ميزة؟ افتح مشكلة في **مستودع GitHub** الخاص بنا:
167
+ 1. افتح **لوحة الأوامر**.
168
+ 2. ابحث عن **Fill Dictionaries**.
169
+ 3. نفذ الأمر لملء القواميس.
143
170
 
144
- [مشاكل GitHub](https://github.com/aymericzip/intlayer-vs-code-extension/issues)
171
+ #### اختبار القواميس
145
172
 
146
- ## الترخيص
173
+ تحقق من صحة القواميس واكتشف الترجمات المفقودة:
147
174
 
148
- تم إصدار Intlayer بموجب **رخصة MIT**.
175
+ 1. افتح **لوحة الأوامر**.
176
+ 2. ابحث عن **Test Dictionaries**.
177
+ 3. راجع المشكلات المبلغ عنها وقم بإصلاحها حسب الحاجة.
149
178
 
150
- ## تاريخ الوثائق
179
+ ## تاريخ الوثيقة
151
180
 
152
- - 5.5.10 - 2025-06-29: بداية التاريخ
181
+ | الإصدار | التاريخ | التغييرات |
182
+ | ------- | ---------- | ------------- |
183
+ | 5.5.10 | 2025-06-29 | بداية التاريخ |