UNPKG

unified-param-handler

Version:

Handles URL parameters and cookies, updating hidden fields.

54 lines (49 loc) 2.18 kB
// src/main.js import { init } from './engine.js'; // Option 1: Immediately initialize with default config // function run() { init(); } // Option 2: Expose init globally to allow custom config injection (Recommended for flexibility) function run() { // Expose the init function globally, perhaps namespaced window.UnifiedParamHandler = { init: init, // Allows calling UnifiedParamHandler.init(myCustomConfigs) from HTML }; // Optionally, auto-initialize if no global config is detected after a short delay, // or just require manual initialization from the HTML. // For simplicity, we'll require manual init call from HTML when using custom config. // If you always want it to run with defaults unless overridden, you could do: if (!window.paramHandlerInitialized) { // WEBPACK_BUILD_HAS_FIXED_CONFIG is true if --env customConfigPath or --env configName was used if ( typeof WEBPACK_BUILD_HAS_FIXED_CONFIG !== 'undefined' && WEBPACK_BUILD_HAS_FIXED_CONFIG ) { let message = `[Unified Param Handler v${WEBPACK_PACKAGE_VERSION}] Initializing with fixed build-time configuration`; if (typeof WEBPACK_BUILD_NAME !== 'undefined' && WEBPACK_BUILD_NAME) { message += ` (Build: ${WEBPACK_BUILD_NAME})`; } console.log(message + '.'); init(); // Call init without arguments, engine.js will use build-defined config } else { // Standard behavior for generic builds (not using customConfigPath or specific configName) console.log( `[Unified Param Handler v${WEBPACK_PACKAGE_VERSION}] Initializing, allowing runtime configuration.` ); // Avoid double init // Check if a global config exists, otherwise use default by calling init() if (typeof window.handlerCustomConfigs !== 'undefined') { init(window.handlerCustomConfigs); } else { init(); // Initialize with defaults from config.js } } window.paramHandlerInitialized = true; } } // DOM Ready check if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); } export default init; // Export init for UMD library