Puis-je utiliser findFilteredTopics pour obtenir les messages privés (Pms)?

Je souhaite faire quelque chose comme GitHub - nolosb/discourse-featured-lists: A Discourse theme component to feature custom topic lists. qui affiche les MP sur d’autres pages (comme « les plus récents »).

L’idée est que les MP de groupe sont difficiles à trouver, donc si je pouvais afficher, disons, les MP de groupe non lus sur /unread, ce serait vraiment génial.

En faisant semblant une minute que je peux trouver comment les afficher, j’ai besoin d’obtenir les données pour pouvoir les afficher.

Puis-je faire quelque chose comme ceci :

    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,
      },
    });

mais faire en sorte que les paramètres obtiennent, disons, les MP de groupe pour le personnel ou l’équipe ou autre chose ?

3 « J'aime »

Eh bien, il semble que je puisse le faire plus ou moins comme ceci :

    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"
      },
    });

Cela me donnera mes messages qui contiennent “upgraded”.

Mais je n’arrive toujours pas à comprendre comment obtenir, par exemple, les messages non lus, les nouveaux messages, tous les messages, les messages envoyés à un groupe.

Soupir. Mais ce n’est pas une liste de sujets.

2 « J'aime »

Mais attendez !!! J’ai trouvé le bon filtre dans

    let topicListFilter = `topics/private-messages-group/${this.currentUser.username}/${groupName}`
    console.log("considérer la liste des sujets", topicListFilter)
    const topicList = await this.store.findFiltered('topicList', {
      filter: topicListFilter,
      params: { },
    });
2 « J'aime »