Ich habe eine Theme-Komponente speziell für unsere Moderatoren entwickelt. Diese Komponente fügt ein Modal hinzu, das Moderatoren daran erinnert, die Sperrung eines Benutzers in Betracht zu ziehen, nachdem sie eine Markierung bearbeitet haben. Ich habe diese Komponente unter javascripts/discourse/admin/components/modal/remove-post.gjs platziert und oben importiert sie AdminUser mit import AdminUser from "admin/models/admin-user";.
Für Moderatoren funktioniert alles perfekt. Reguläre Benutzer haben jedoch Probleme. Discourse versucht immer noch, diese Komponente für alle Benutzer zu laden, und da reguläre Benutzer keine admin/**-Module laden, führt dies zu dem folgenden Fehler:
Error: Could not find module `admin/models/admin-user`
Idealerweise möchte ich, dass diese Unterkomponente (oder sogar nur dieser Import) nur für Moderatoren und Administratoren geladen wird. Gibt es eine offiziell unterstützte Methode, um sicherzustellen, dass eine Glimmer-Komponente innerhalb einer Theme-Komponente in Discourse nur für Mitarbeiter (Moderatoren/Administratoren) geladen wird, damit reguläre Benutzer niemals Fehler aufgrund fehlender Module für Admin-spezifische Importe erhalten?