إعلانات متعارضة على مكونين: تخطيط بعرض كامل وبحث الرأس

إذا كنت أتذكر بشكل صحيح، فإن الغلاف الإضافي يجعل من السهل محاذاة العنوان مع محتوى الموضوع لأنني أستطيع تعيين عرض .header-contents__toggle-and-logo المدمج إلى var(--d-sidebar-width)، وهو بنفس عرض الشريط الجانبي بغض النظر عن المحتوى.

بدون الغلاف الإضافي، يكون التصميم قابلاً للتطبيق… ولكن مع عمودين شبكيين لا يمكنني الاعتماد على عرض واحد لكليهما.

أحتاج إلى افتراض أن تبديل الشريط الجانبي سيكون دائمًا بعرض ثابت، ثم حساب أقصى عرض للشعار بناءً على ذلك. هذا يعمل، ولكني أتذكر أنه كان أكثر هشاشة… لم أنظر في هذا منذ فترة، ولكن ربما يستحق محاولة أخرى :thinking:

بالعودة إلى هذا… يمكنني أن أرى لماذا تم ذلك بتجاوز. بدون ذلك، عليك تزيين ودجات العنوان أو الرأس، لذلك ينتهي بك الأمر بإضافة محتوى داخل .title أو .panel، مما يجعل المحاذاة المركزية لشريط البحث أكثر صعوبة… ويتطلب بعض CSS الذي يجعل التصميم أكثر هشاشة ويجعل التوافق مع مكونات الرأس الأخرى أصعب. من الناحية المثالية، يجب أن يكون محتوى شريط البحث خارج هذه الأقسام، ولكن لا يوجد شيء يمكن ربطه للقيام بذلك.

يمكننا الآن إضافة منفذ إضافي للودجات، لذلك يمكن أن يساعد ذلك…

سيسمح هذا بإضافة محتوى قبل قسم .panel، بدلاً من داخله باستخدام decorateWidget. في هذه الحالة، يمكن إزالة تجاوز القالب من مكون header-search، ويمكن إضافة موصل جديد إلى:

javascripts/discourse/connectors/before-header-panel

والذي يمكن أن يحتوي على

<MountWidget @widget="search-banner" />

إضافة منفذ إضافي إلى ودجت حتى نتمكن من إضافة ودجت إلى منفذ إضافي يبدو معقدًا بعض الشيء… @david/@cvx هل تعرفون ما إذا كان هذا سيكون سيئًا للأداء أو يسبب أي مشاكل أخرى؟