From f17d6092f16808e7e54617eb3ebfa6c3b526b56e Mon Sep 17 00:00:00 2001 From: HighImKevin Date: Mon, 1 Dec 2025 18:32:11 -0500 Subject: [PATCH] Correctly load Configuration UI and dependencies --- injector.js | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/injector.js b/injector.js index bf2cccc..246c543 100644 --- a/injector.js +++ b/injector.js @@ -529,6 +529,24 @@ console.log(`[KefinTweaks Injector] Successfully loaded: ${scriptDef.name}`); } + + async function loadConfigurationJS() { + const configDependencyNames = ['modal', 'toaster', 'utils']; + for (const depName of configDependencyNames) { + const depScript = SCRIPT_DEFINITIONS.find(script => script.name === depName); + if (depScript) { + try { + await loadScriptSync(depScript); + } catch (error) { + console.warn(`[KefinTweaks Injector] Failed to load configuration dependency '${depName}':`, error); + } + } + } + + // Load configuration UI so admins can re-enable KefinTweaks + await loadScript('configuration.js'); + await loadCSS('configuration.css'); + } // Main initialization function async function initialize() { @@ -548,21 +566,7 @@ try { // Ensure configuration dependencies are loaded so the admin UI works - const configDependencyNames = ['modal', 'toaster', 'utils']; - for (const depName of configDependencyNames) { - const depScript = SCRIPT_DEFINITIONS.find(script => script.name === depName); - if (depScript) { - try { - await loadScriptSync(depScript); - } catch (error) { - console.warn(`[KefinTweaks Injector] Failed to load configuration dependency '${depName}':`, error); - } - } - } - - // Load configuration UI so admins can re-enable KefinTweaks - await loadScript('configuration.js'); - await loadCSS('configuration.css'); + await loadConfigurationJS(); console.log('[KefinTweaks Injector] Configuration script loaded (KefinTweaks is disabled)'); } catch (error) { console.warn('[KefinTweaks Injector] Failed to load configuration UI while disabled:', error); @@ -635,8 +639,7 @@ // Always load configuration.js for admin UI (loads after other scripts) console.log('[KefinTweaks Injector] Loading configuration script...'); try { - await loadScript('configuration.js'); - await loadCSS('configuration.css'); + await loadConfigurationJS(); console.log('[KefinTweaks Injector] Configuration script loaded successfully'); } catch (error) { console.warn('[KefinTweaks Injector] Failed to load configuration script:', error);