diff --git a/libs/utils/sidekick-decorate.js b/libs/utils/sidekick-decorate.js index 89a87911ae..1c8a592e8d 100644 --- a/libs/utils/sidekick-decorate.js +++ b/libs/utils/sidekick-decorate.js @@ -3,8 +3,11 @@ import userCanPublishPage from '../tools/utils/publish.js'; const PUBLISH_BTN = '.publish.plugin button'; const PROFILE = '.profile-email'; const CONFIRM_MESSAGE = 'Are you sure? This will publish to production.'; +let stylePublishCalled = false; export default function stylePublish(sk) { + if (stylePublishCalled) return; + stylePublishCalled = true; const setupPublishBtn = async (page, btn) => { const { canPublish, message } = await userCanPublishPage(page, false); if (canPublish) { diff --git a/libs/utils/utils.js b/libs/utils/utils.js index 3da9d8bada..221ca379c3 100644 --- a/libs/utils/utils.js +++ b/libs/utils/utils.js @@ -1057,6 +1057,8 @@ async function checkForPageMods() { async function loadPostLCP(config) { await decoratePlaceholders(document.body.querySelector('header'), config); + const sk = document.querySelector('helix-sidekick'); + if (sk) import('./sidekick-decorate.js').then((mod) => { mod.default(sk); }); if (config.mep?.targetEnabled === 'postlcp') { /* c8 ignore next 2 */ const { init } = await import('../features/personalization/personalization.js');