| | | |\n|— | — | —|\n|:information_source: | ملخص | أضف زرًا أو نصًا في أي مكان|\n|:hammer_and_wrench: | المستودع | https://github.com/literatecomputing/discourse-custom-components|\n|:question: | دليل التثبيت | كيفية تثبيت سمة أو مكون سمة|\n|:open_book: | جديد في سمات Discourse؟ | دليل المبتدئين لاستخدام سمات Discourse|\n\n\u003c!-- املأ "repoName" و "repoURL" لزر التثبيت التلقائي –\u003e\n\n[wrap=theme-install-button repoName="Custom Components" repoUrl="https://github.com/literatecomputing/discourse-custom-components\"]\nثبّت مكون السمة هذا\n[/wrap]\n\n\u003c!-- صف هذه السمة/المكون في جملة أو اثنتين –\u003e\n\nأضف زر رابط أو نصًا عشوائيًا في أي منفذ إضافي. (تجاهل العلامات المائية في الصور - لقد التقطت هذه لقطات الشاشة على موقع تجريبي/اختبار.)\n\n\u003c!-- أضف لقطات شاشة (إذا كانت قابلة للتطبيق) –\u003e\n\n
\n\n\n\n\n\n\u003c!-- أضف المزيد من التفاصيل واشرح الإعدادات (إذا كانت قابلة للتطبيق) –\u003e\n\nبدأت في تطوير هذا المكون الإضافي لشخص أراد عرض زر "انقر فوق هذا الزر للاشتراك حتى تتمكن من إرسال رسائل خاصة" على ملفات تعريف المستخدمين وبطاقات المستخدمين. أرادوا أن يظهر الزر إذا لم يتمكن المستخدم من إرسال رسائل خاصة. نظرًا لأنني لست دائمًا ذكيًا كما أعتقد، فقد كتبت المكون باستخدام المجموعات لتحديد ما إذا كان الزر سيظهر. إحدى المشكلات في هذا النهج هي أن موظفي الدعم لم يكونوا في مجموعة المشتركين، لذلك حصلوا على زر "عليك الاشتراك" على الرغم من أنهم كانوا قادرين على إرسال رسائل خاصة. أيضًا، كانت المجموعة مخفية، لذلك كان من المستحيل استخدامها في مكون سمة على أي حال. لقد أعدت كتابة مكون السمة هذا لاستخدامcurrentUser.can_send_private_messages لتحديد ما إذا كان سيتم عرض الزر.\n\n### لمن هذا؟\n\nإذا كنت ترغب في وضع زر يحتوي على رابط فيه، أو بعض النصوص العشوائية التي يتم عرضها أو إخفاؤها لمجموعات معينة، فسيسمح لك هذا بإدراجها في أي منفذ إضافي. هل تريد إضافة زر رابط "عليك الاشتراك" بين كل رسالة باستثناء تلك التي ليست أعضاء؟ هذا سيفعل ذلك. هل تريد وضع بعض HTML العشوائي في منفذ إضافي، فقط لمعرفة كيف سيبدو؟ هذا سيفعل ذلك.\n\n### كيف يساعد المطورين\n\nتحتوي هذه السمة على بعض الأمثلة البسيطة حول كيفية:\n- استخدام https://meta.discourse.org/t/objects-type-for-theme-setting/305009\n- استخدام api.renderInOutlet (كما هو موضح هنا لوضع مكون Glimmer في منفذ يتم التحكم فيه بواسطة إعداد بدلاً من إنشاء ملف في دليل connectors\n- كتابة مكون Glimmer بسيط يصل إلى currentUser\n- تغليف مكون في قالب آخر (مضمن) لتتمكن من تمرير البيانات إليه\n- عرض HTML عشوائي من إعداد سمة خالٍ من قيود Markdown - بالتأكيد، ربما \n[quote="Discourse, post:1, topic:82557"]\nيمكنك استخدام مساعد html-safe الخاص بـ Ember هنا وسيقوم بعرض HTML بدلاً من النص.\n[/quote]\n\nولكن إذا كنت تحاول القيام بذلك داخل \u003ctemplate\u003e داخل ملف .gjs، فإن الأمر يعمل بشكل مختلف قليلاً (مثل {{htmlSafe component.text}})



