From ff163ae980b787bea316ee7a8d61e5eea90277d2 Mon Sep 17 00:00:00 2001
From: Penar Musaraj <pmusaraj@gmail.com>
Date: Thu, 12 Dec 2019 12:21:30 -0500
Subject: [PATCH] DEV: Prevent empty admin topic buttons from rendering

When using api.decorateWidget("topic-admin-menu:adminMenuButtons") in plugins, an empty button is added if the helper only returns attributes based on a condition (for example, if the admin action is limited to public topics.) In that case, we need to exclude the button from rendering.
---
 app/assets/javascripts/discourse/widgets/topic-admin-menu.js.es6 | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app/assets/javascripts/discourse/widgets/topic-admin-menu.js.es6 b/app/assets/javascripts/discourse/widgets/topic-admin-menu.js.es6
index ccc5a82e959..29296e2bfe4 100644
--- a/app/assets/javascripts/discourse/widgets/topic-admin-menu.js.es6
+++ b/app/assets/javascripts/discourse/widgets/topic-admin-menu.js.es6
@@ -272,6 +272,7 @@ export default createWidget("topic-admin-menu", {
         "ul",
         buttons
           .concat(extraButtons)
+          .filter(Boolean)
           .map(b => this.attach("admin-menu-button", b))
       )
     ];