findFilteredTopics を使って Pms を取得できますか?

次のようなことをしたいのですが、GitHub - nolosb/discourse-featured-lists: A Discourse theme component to feature custom topic lists. のように、PM を他のページ (例: 最新) に表示させたいと考えています。

グループ PM は見つけにくいことがあるため、たとえば未読のグループ PM を /unread に表示できれば、非常に素晴らしいと思います。

仮に表示方法を理解できたとして、次に必要となるのは、表示するためのデータを取得することです。

次のようなことは可能でしょうか?

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

しかし、params を使用して、たとえばスタッフやチームなどのグループ PM を取得することはできますか?

「いいね!」 3

まあ、こんな感じでできるようです。

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

これで「upgraded」が含まれるメッセージを取得できます。

しかし、未読メッセージ、新規メッセージ、全メッセージ、グループ宛てのメッセージなどを取得する方法がまだわかりません。

はあ。でも、これはtopic_listではありません。

「いいね!」 2

しかし、待ってください!正しいフィルターを次に見つけました。

    let topicListFilter = `topics/private-messages-group/${this.currentUser.username}/${groupName}`
    console.log("トピックリストを検討してください", topicListFilter)
    const topicList = await this.store.findFiltered('topicList', {
      filter: topicListFilter,
      params: { },
    })
「いいね!」 2