استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
تاريخ الإصدارات
- "بدء التوثيق"v9.0.025/6/2026
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
intlayerMinify
intlayerMinify هو عبارة عن إضافة لـ Vite يقوم بتصغير ملفات قاموس JSON المجمعة أثناء عملية البناء للإنتاج. يقوم بإزالة جميع الفراغات غير الضرورية، وعند دمجه مع intlayerPrune ، يعيد تسمية حقول المحتوى اختياريًا إلى أسماء مستعارة أبجدية قصيرة (a و b و c ، ...) لتقليل حجم الحزمة (bundle size) بشكل أكبر.
تم تضمين هذا المكون الإضافي وتهيئته تلقائيًا بالفعل عند استخدامك لـ intlayer(). تحتاج فقط إلى تسجيله يدويًا إذا كنت تقوم بتركيب مصفوفة الإضافات بنفسك.
الاستخدام
نسخ الكود إلى الحافظة
شروط التفعيل
يكون intlayerMinify نشطًا فقط عندما تكون الشروط الثلاثة التالية صحيحة:
- أمر Vite هو
build(وليسserve/ dev). - إعداد
build.optimizeهوtrue(أوundefined، والذي يتم تعيينه افتراضيًا إلىtrueلعمليات البناء). - إعداد
build.minifyهوtrueفي إعدادات Intlayer الخاصة بك.
عندما يكون editor.enabled في وضع true، يستمر المكوّن الإضافي في العمل لكنه يتخطى إعادة تسمية الحقول: إذ تعيد إعادة التسمية كتابة مفاتيح المحتوى التي يتنقل بينها المفسِّر، مما يجعل keyPath الذي يتلقاه المحرر المرئي غير مطابق بعد الآن للقواميس غير المدمجة التي يعدّلها. يبقى ضغط المسافات البيضاء وإزالة البيانات الوصفية من المستوى الأعلى نشطين.
ما الذي يتم تصغيره
يستهدف الإضافة موقعين من القاموس (كما هو محدد من intlayer.system):
dictionariesDir— قواميس ثابتة لجميع اللغات (مثل.intlayer/dictionaries/*.json)dynamicDictionariesDir— قواميس ديناميكية لكل لغة
قواميس وضع الجلب (fetchDictionariesDir) لا يتم تصغيرها أبدًا لأنها تُقدم من واجهة برمجية (API) بعيدة في وقت التشغيل باستخدام أسماء حقولها الأصلية. إعادة تسمية الحقول ستنشئ عدم تطابق بين استجابة الخادم والوصول إلى الخصائص على جانب العميل.
تشويه أسماء الحقول (Property minification)
عندما يقوم intlayerPrune بتحليل قاعدة الكود وتعبئة الخريطة pruneContext.dictionaryKeyToFieldRenameMap ، يقوم intlayerMinify أيضًا بإعادة تسمية أسماء حقول المحتوى إلى أسماء مستعارة قصيرة. على سبيل المثال:
نسخ الكود إلى الحافظة
تتم إعادة تسمية عمليات الوصول إلى الخصائص في الملف المصدر المقابل بواسطة مرحلة Babel داخل intlayerOptimize ، لذا يظل سلوك وقت التشغيل دون تغيير.
لا يتم إعادة تسمية حقول Intlayer الداخلية (nodeType و translation وما إلى ذلك) أبدًا.
قواميس الحالات الخاصة (Edge-cases)
يتم تخطي القواميس المشار إليها في pruneContext.dictionariesWithEdgeCases (الشذوذ الهيكلي الذي تم اكتشافه أثناء مرحلة التقليم) تمامًا — لا يتم تصغيرها ولا تشويهها — لتجنب شحن بيانات تالفة.
المجموعات المؤهلة (المجموعات / المتغيرات / السجلات الفوقية)
بالنسبة للقواميس التي تحتوي على مصفوفة qualifierTypes (المجموعات والمتغيرات والسجلات الفوقية) ، يحتفظ المكون الإضافي بمصفوفة qualifierTypes وخريطة meta الجانبية حرفيًا. يتم تشويه أسماء الحقول الخاصة بمدخلات content فقط. لا يتم لمس المفاتيح المركبة (المستخدمة لمطابقة المحدد في وقت التشغيل) أبدًا.
