Update: the HTML generation in that widget was pretty complex and it had a lot of external dependencies. I also didn’t want to copy all that code to our plugin, so I ended up doing this
api.reopenWidget(`search-result-topic`, {
html(attrs) {
const html = this._super(attrs);
// modify html as we see fit
return html;
}
});
Modifying the already generated HTML is probably not the most elegant way to do it, but it saved me from having to copy a large block of code from core to the plugin, making the plugin more robust against future core updates.