Posso usar getFilteredTopics para obter Pms?

Estou interessado em fazer algo como GitHub - nolosb/discourse-featured-lists: A Discourse theme component to feature custom topic lists. que exibe Mensagens Privadas (PMs) em outras páginas (como a mais recente).
A ideia é que as PMs de grupo podem ser difíceis de encontrar, então se eu pudesse fazer com que, digamos, as PMs de grupo não lidas fossem exibidas em /unread, isso seria muito legal.
Fingindo por um minuto que consigo descobrir como exibi-las, o que preciso é obter os dados para poder exibi-los.
Posso fazer algo como isto:

    const topicList = await this.store.findFiltered('topicList', {
      filter: this.args.list.filter,
      params: {
        category: this.args.list.category,
        tags: this.args.list.tag,
        solved: solvedFilter,
      },
    });

mas fazer com que os parâmetros obtenham, digamos, as PMs de grupo para a equipe ou time, ou qualquer outra coisa?

3 curtidas

Bem, parece que consigo fazer algo assim:

    const topicList = await this.store.findFiltered('topicList', {
      filter: this.args.list.filter,
      // filter: "search",
      params: {
        // category: this.args.list.category,
        // tags: this.args.list.tag,
        // solved: solvedFilter,
        q: "upgraded in:messages"
      },
    });

isso me dará minhas mensagens que contêm “upgraded”.

Mas ainda não consigo descobrir como obter, digamos, mensagens não lidas, novas mensagens, todas as mensagens, mensagens enviadas para um grupo.

Suspiro. Mas não é uma topic_list.

2 curtidas

Mas espere!!! Encontrei o filtro certo em

    let topicListFilter = `topics/private-messages-group/${this.currentUser.username}/${groupName}`;
    console.log("consider the topic list", topicListFilter);
    const topicList = await this.store.findFiltered('topicList', {
      filter: topicListFilter,
      params: { },
    });
2 curtidas