منسّق Flow
نسّق أكواد JavaScript المكتوبة بأنواع باستخدام منسّق Flow هذا. الصق أكوادًا تتضمن أسماء مستعارة للأنواع، وأنواع كائنات دقيقة، ودوالًا مع تعليقات للأنواع أو توجيه @flow، وستعيد الأداة تنسيقها رمزًا برمز مع إزاحة بمسافتين، ومسافات حول تعليقات الأنواع والعوامل، وفواصل منقوطة في نهايات العبارات، وأقواس متلاصقة لأنواع الكائنات الدقيقة. مفيد للمطوّرين الذين يصونون قواعد أكواد Flow ويريدون مقاطع واضحة للمراجعات والترحيل والتوثيق.
الأسئلة الشائعة
كيف يعمل منسّق Flow؟
يقسّم الكود إلى رموز مثل الأقواس والفواصل المنقوطة والعوامل والسلاسل النصية والتعليقات، ثم يعيد بناء تخطيطه منها. تُزاح الكتل بمسافتين، وتنتهي العبارات بفواصل منقوطة، وتُنسّق المسافات حول العوامل بشكل متّسق.
كيف تُنسّق أنواع الكائنات الدقيقة؟
تبقى الخطوط العمودية في أنواع الكائنات الدقيقة ملاصقة للأقواس مع مسافة داخلها، مثل type Props = {| name: string, age: number |}. وتُوحّد المسافات بعد النقطتين والفواصل داخل النوع.
هل يُحتفظ بتعليق @flow؟
نعم، يُحفظ توجيه // @flow وجميع التعليقات السطرية والكتلية الأخرى. وينهي التعليق السطري سطره دائمًا، لذا يبدأ الكود التالي في سطر جديد.
هل يتحقق المنسّق من أنواع الكود؟
لا، فهو لا يشغّل Flow ولا يتحقق من صحة البنية النحوية، لذا يمكنه أيضًا تنسيق المقاطع غير المكتملة. شغّل flow check في مشروعك للعثور على أخطاء الأنواع.
هل تُحفظ الأنواع العامة ومعلمات الأنواع؟
نعم، تُتتبّع الأقواس الزاوية في أنواع مثل Array<string> أو Map<K, V> حتى لا تُفهم على أنها عوامل مقارنة. وتُوحّد المسافات بعد الفواصل داخلها.
هل يمكنني تغيير عرض الإزاحة؟
لا، يستخدم الناتج مسافتين دائمًا ولا توجد خيارات للأسلوب. وهذا يحافظ على اتساق التنسيق بين عمليات التشغيل وبين أعضاء الفريق.
هل تتغير السلاسل النصية؟
لا، تُنسخ السلاسل النصية والقوالب النصية والتعبيرات النمطية تمامًا كما كُتبت. تتغير المسافات البيضاء بين الرموز فقط.
لماذا يُحاط الناتج بسياج javascript؟
Flow هي JavaScript مكتوبة بأنواع، لذا تُعاد النتيجة في كتلة كود Markdown محددة بعلامة javascript، ما يجعل معظم أدوات تمييز الصياغة تعرضها بشكل صحيح. انسخ الأسطر بين السياجين إلى ملف .js أو .flow.
هل سيغيّر التنسيق ما يفعله الكود؟
لا تعيد الأداة سوى ترتيب المسافات البيضاء وتضيف الفواصل المنقوطة في نهايات العبارات. تحقّق من النتيجة إذا كان الكود يعتمد على أسطر بلا فواصل منقوطة تبدأ بقوس أو قوس مربع.
ما مقدار الكود الذي يمكنني تنسيقه؟
حتى 5 MB من الكود في كل عملية؛ ويُرفض الإدخال الأكبر مع عرض رسالة. والنتيجة مطابقة لخيار Flow في منسّق الأكواد.