Como posso acessar composePrivateMessage de um botão de menu de postagem?

Olá,

Escrevi um plugin para comportamento do tipo lista de e-mails, onde os e-mails podem ser respondidos (apenas ao remetente) e reply-all (para todo o tópico). Quero recriar isso na interface web também, tendo um botão “responder” e “responder a todos” em cada postagem no tópico. O “responder” imitaria clicar no cartão do autor de uma postagem e depois em “mensagem”. Este é o comportamento padrão que ele oferece:

Apesar de ter escrito o plugin acima, não sou muito familiarizado com rails e tenho dificuldades significativas com isso. Acho que encontrei a ‘ação’ correta aqui. É composePrivateMessage, que é encontrada em /discourse/app/assets/javascripts/discourse/app/routes/application.js. Como indicado pelo caminho, é uma rota, o que me confunde, e estou com dificuldades para transformar isso em um botão clicável.

Aqui está o que tenho no momento:

  api.addPostMenuButton("reply-privately", (attrs, state) => {
    return {
      action: composePrivateMessage(user, post),
      title: "reply-privately",
      icon: "reply",
      position: "last",
      className: "reply-privately",
    };
  });

Alguma ideia de como fazer a ‘ação’ se encaixar na ‘rota’?

1 curtida