Добавление внешнего виджета в композер

Спасибо, что указали мне правильное направление. Я столкнулся с ещё одной проблемой: при открытии страницы темы, где должен использоваться этот скрипт, он не загружается/не отображается. Он начинает работать только после обновления страницы, но и то не всегда. Связано ли это с тем, что Discourse — это одностраничное приложение (SPA)? Я пытаюсь понять, мне не хватает знаний о Discourse или мне нужно что-то допрограммировать самостоятельно.

Вот текущий код, который я использую. Буду очень благодарен за любые указания.

let loadScript = require('discourse/lib/load-script').default;
api.decorateCooked($elem => { $elem.children('div[data-PAWidget]').ready(function() {
         $elem.children('div[data-PAWidget]').append(" <div id='PurpleAirWidget_11726_module_AQI_conversion_C0_average_0_layer_standard'>Загрузка виджета PurpleAir...</div>");
       loadScript("https://www.purpleair.com/pa.widget.js?key=21R72LUN79CXRZ50&module=AQI&conversion=C0&average=0&layer=standard&container=PurpleAirWidget_11726_module_AQI_conversion_C0_average_0_layer_standard").then(() =>{       
    })  
  })     
});