Auslösen einer Funktion bei jeder Änderung der Kategorie im Composer

Mir fehlt hier vielleicht etwas Offensichtliches, daher entschuldige ich mich im Voraus, falls das der Fall ist.

Mein Plugin hat eine benutzerdefinierte Einstellung für jede Kategorie, die verwendet wird, um einen Umschalter im Komponisten ein-/auszublenden. Der Umschalter ist in einer Glimmer-Komponente eingerichtet, die von einem Initialisierer aufgerufen wird, um im composer-fields-Plugin-Outlet gerendert zu werden.

Mein Ziel ist es, dass der Komponist den Umschalter ein-/ausblendet, wenn die Kategorie im Komponisten geändert wird, abhängig vom Wert der benutzerdefinierten Einstellung, die mit dieser Kategorie verknüpft ist.

Ist es möglich, einen Beobachter auf die outletArgs eines Plugin-Outlets zu setzen? Das Komponistenmodell wird in den outletArgs gesetzt, daher dachte ich, ich könnte den Beobachter über diese auf die categoryId setzen. Dann würde ich eine Funktion ausführen, um den Wert der benutzerdefinierten Einstellung in der Kategorie zu überprüfen. Aber ich habe Schwierigkeiten, den Beobachter einzurichten. Es könnte sein, dass ich ihn falsch einrichte, da ich mit EmberJS noch nicht so vertraut bin.

Oder gibt es einen anderen Weg, dies zu erreichen?

Als Kontext: Ich verwende derzeit Discourse v3.4.7.

Ich denke, GitHub - discourse/discourse-custom-composer-placeholders könnte als Beispiel dafür dienen, wie das gemacht wird.
Es ändert den Platzhalter im Composer basierend auf der Kategorie und funktioniert auch, wenn man ihn ändert.

Diese Lösung ausprobiert, aber leider scheint die Version, auf der ich aufbaue, eine ältere Liste von initialisierten Transformatoren zu haben, der der composer-editor-reply-placeholder fehlt.

Als weiteren Kontext refaktoriere ich Plugin-Funktionen, um Glimmer-Komponenten zu verwenden, nachdem die registerConnectorClass-API veraltet ist. Der folgende Code ist das, was ursprünglich eingerichtet wurde.

export default {
  initialize(container) {
    withPluginApi("1.6.0", api => {
      api.registerConnectorClass("composer-fields", "handlebars-template-name", {
        setupComponent(attrs, component) {
          const model = attrs.model;
          const controller = api.container.lookup("controller:composer");
          if (controller) {
            controller.addObserver("model.categoryId", this, function () {

              // Logik zum Setzen von Werten für showToggle und isRestricted

              let props = {
                showField: showToggle && isRestricted,
              }
              component.setProperties(Object.assign(props));
            })
          }
        }
      }

Gibt es eine andere Möglichkeit, dieselbe Funktionalität aus einer Glimmer-Komponente zu erhalten? Insbesondere das Beobachten von Änderungen am Modell und/oder categoryId.