Obter título do tópico para exibir no banner personalizado

Tenho usado o router e o discovery para criar um herói dinâmico dependendo da página exibida, no entanto, quando chego a uma página de tópico individual, não consigo encontrar uma maneira de passar o título do tópico para o template.

Existe uma maneira de recuperar o título do tópico aqui?

import { inject as service } from "@ember/service";
import Component from "@glimmer/component";
import { defaultHomepage } from "discourse/lib/utilities";

export default class BcnHero extends Component {
  @service router;
  @service discovery;

  get showHero() {
    const { currentRouteName } = this.router;
    const { category } = this.discovery;

    let categoryName = "";
    let categoryDescription = "";
    if (category) {
      categoryName = category.name;
      categoryDescription = category.description;
    }

    if (currentRouteName === `discovery.${defaultHomepage()}`) {
      return { homepageHero: true };
    }

    if (currentRouteName === "discovery.category" || currentRouteName.startsWith("topic")) {
      return { dynamicHero: true, title: categoryName, subtitle: categoryDescription };
    }
    return { emptyHero: true };
  }
}
1 curtida