Como obter os top 3 tópicos com mais respostas ativas nos últimos 30 dias

Olá pessoal,

Estou trabalhando para obter os 3 principais tópicos com mais respostas ativas nos últimos 30 dias, quero mostrar apenas esses tópicos e estou personalizando o plugin showcase category. No lado JS, executei o código abaixo, mas parece que ele está retornando uma promessa. Alguém pode me dizer como posso fazer isso?

showcased-topic-list.js

this.store.findFiltered("topicList", filter).then((topicList) => {
  var idaas = [];


  var final_arr = [];
  topicList.topics = topicList.topics.forEach(async (t) => {

    const response = await ajax(`/t/${t.id}/posts.json`).then(async (result) => {
      await result.post_stream.posts.forEach((p) => {
        let date1 = new Date();
        let date2 = new Date(p.created_at);
        let Difference_In_Time = date1.getTime() - date2.getTime();
        let Difference_In_Days = Difference_In_Time / (1000 * 3600 * 24);
        if (Difference_In_Days <= 30) {

          idaas.push(result.id);

        }
      });
      return idaas;
    });
    final_arr.push(response);

  });
});
example:
var smallarrq = ['71782', '72307'];
this.set(
  "topicList",
  topicList.topics.filter((t) => smallarrq.includes(t.id)).slice(0, settings.max_list_length)
);

Eu quero que este array final_arr se pareça com o array smallarrq acima, mas ele está retornando como promessa.
Por favor, ajudem, estou fazendo isso há muitos dias.

Obrigado,