diff --git a/static/js/core.js b/static/js/core.js index 36376d89..1a250aca 100644 --- a/static/js/core.js +++ b/static/js/core.js @@ -68,7 +68,10 @@ export class AppCore { // Start onboarding if needed (after everything is initialized) setTimeout(() => { - onboardingManager.start(); + // Do not show onboarding if version-mismatch banner is visible + if (!bannerService.isBannerVisible('version-mismatch')) { + onboardingManager.start(); + } }, 1000); // Small delay to ensure all elements are rendered // Return the core instance for chaining diff --git a/static/js/managers/BannerService.js b/static/js/managers/BannerService.js index c2226fce..808bfb12 100644 --- a/static/js/managers/BannerService.js +++ b/static/js/managers/BannerService.js @@ -171,6 +171,16 @@ class BannerService { } } + /** + * Check if a banner is currently rendered and visible + * @param {string} bannerId + * @returns {boolean} + */ + isBannerVisible(bannerId) { + const el = document.querySelector(`[data-banner-id="${bannerId}"]`); + return !!el && el.offsetParent !== null; + } + /** * Update container visibility based on active banners */