{"version":3,"file":"js/main.js","mappings":"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","sources":["webpack://vp-website/webpack/runtime/load script","webpack://vp-website/./src/app/lib/bs-theme.js","webpack://vp-website/webpack/bootstrap","webpack://vp-website/webpack/runtime/define property getters","webpack://vp-website/webpack/runtime/ensure chunk","webpack://vp-website/webpack/runtime/get javascript chunk filename","webpack://vp-website/webpack/runtime/get mini-css chunk filename","webpack://vp-website/webpack/runtime/hasOwnProperty shorthand","webpack://vp-website/webpack/runtime/make namespace object","webpack://vp-website/webpack/runtime/publicPath","webpack://vp-website/webpack/runtime/jsonp chunk loading","webpack://vp-website/./src/app/utils/optimizedImage.js","webpack://vp-website/./src/main.js"],"sourcesContent":["var inProgress = {};\nvar dataWebpackPrefix = \"vp-website:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// This script is used to change the theme of the website from dark to light and vice versa.\n\n\nconst THEMES = [\"light\", \"dark\"];\nconst PREFERED_THEME = \"dark\";\nconst LOCALSTORAGE_PREFIX = \"bsTheme\"\n\nfunction getPreferredTheme() {\n return PREFERED_THEME;\n}\n\nfunction getOtherTheme() {\n return THEMES.find((theme) => theme !== getPreferredTheme());\n}\n\nfunction getLocalStoragePrefix() {\n return LOCALSTORAGE_PREFIX || \"bsTheme\";\n}\n\nfunction getSystemTheme() {\n const preferdTheme = getPreferredTheme();\n const otherTheme = getOtherTheme();\n return window.matchMedia(`(prefers-color-scheme: ${preferdTheme})`).matches ? preferdTheme : otherTheme;\n}\n\nfunction getStoredTheme() {\n return localStorage.getItem(`${getLocalStoragePrefix()}-theme_mode`) || null;\n};\n\nfunction storeTheme(theme) {\n localStorage.setItem(`${getLocalStoragePrefix()}-theme_mode`, theme);\n}\n\n\nconst themeMode = getStoredTheme() || getPreferredTheme() || getSystemTheme();\n\nconst html = document.querySelector(\"html\");\nhtml.dataset.bsTheme = themeMode;\nstoreTheme(themeMode);\n\nconst triggerThemeChange = document.querySelector(\"#triggerThemeChange\");\nconst mode = getStoredTheme()\n\nfunction setButtonIcon(mode) {\n if (mode === \"dark\") {\n triggerThemeChange.innerHTML = '';\n triggerThemeChange.classList.remove(\"btn-light\");\n triggerThemeChange.classList.add(\"btn-dark\");\n }\n else {\n triggerThemeChange.innerHTML = '';\n triggerThemeChange.classList.remove(\"btn-dark\");\n triggerThemeChange.classList.add(\"btn-light\");\n }\n}\n\nfunction themeChangeHandler() {\n const html = document.querySelector(\"html\");\n\n const mode = html.dataset.bsTheme\n if (mode === \"dark\") html.dataset.bsTheme = \"light\";\n else html.dataset.bsTheme = \"dark\";\n\n setButtonIcon(html.dataset.bsTheme);\n storeTheme(html.dataset.bsTheme);\n}\n\nif (triggerThemeChange) {\n setButtonIcon(mode);\n triggerThemeChange.addEventListener(\"click\", themeChangeHandler);\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n const themeToggleButton = document.getElementById('triggerThemeChange');\n const body = document.body;\n\n themeToggleButton.addEventListener('click', () => {\n body.classList.toggle('dark-mode');\n });\n\n // Ensure the dark mode class is applied correctly.\n const html = document.querySelector(\"html\");\n if (html.dataset.bsTheme === 'dark') {\n body.classList.add('dark-mode');\n } else {\n body.classList.remove('dark-mode');\n }\n});\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"js/\" + (chunkId === 925 ? \"lazyload\" : chunkId) + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t458: 0,\n\t792: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkvp_website\"] = self[\"webpackChunkvp_website\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","/**\n * Utility functions for generating optimized image markup\n */\n\n/**\n * Simple function to check if a file exists by loading it as an image\n * This avoids server requests for checking file existence\n */\nfunction imageExists(url) {\n return new Promise((resolve) => {\n const img = new Image();\n img.onload = () => resolve(true);\n img.onerror = () => resolve(false);\n img.src = url;\n });\n}\n\n/**\n * Generates a picture tag with appropriate srcsets for responsive images\n * This supports WebP and AVIF formats with proper fallbacks\n * \n * @param {string} imagePath - The path to the image (without extension)\n * @param {Object} options - Configuration options\n * @returns {string} HTML picture tag\n */\nexport async function generatePictureTag(imagePath, options = {}) {\n const {\n alt = '',\n className = '',\n lazy = true,\n sizes = '(max-width: 480px) 100vw, (max-width: 768px) 50vw, 33vw',\n width = '',\n height = '',\n style = '',\n } = options;\n\n // Extract the base path without extension\n const basePath = imagePath.replace(/\\.(jpg|jpeg|png|gif)$/, '');\n \n // Generate the responsive sizes strings\n const breakpoints = ['xs', 'sm', 'md', 'lg', 'xl'];\n \n // Create the picture element container\n const picture = document.createElement('picture');\n \n // Check if AVIF is supported\n const avifExists = await imageExists(`${basePath}.avif`);\n if (avifExists) {\n // Create AVIF source element if format exists\n const avifSource = document.createElement('source');\n avifSource.type = 'image/avif';\n \n // Build srcset for AVIF\n const avifSrcsetParts = [];\n for (const size of breakpoints) {\n const sizeExists = await imageExists(`${basePath}-${size}.avif`);\n if (sizeExists) {\n const width = size === 'xs' ? 480 : size === 'sm' ? 768 : size === 'md' ? 992 : size === 'lg' ? 1200 : 1600;\n avifSrcsetParts.push(`${basePath}-${size}.avif ${width}w`);\n }\n }\n \n if (avifSrcsetParts.length > 0) {\n avifSource.srcset = avifSrcsetParts.join(', ');\n avifSource.sizes = sizes;\n picture.appendChild(avifSource);\n }\n }\n \n // Check if WebP is supported\n const webpExists = await imageExists(`${basePath}.webp`);\n if (webpExists) {\n // Create WebP source element if format exists\n const webpSource = document.createElement('source');\n webpSource.type = 'image/webp';\n \n // Build srcset for WebP\n const webpSrcsetParts = [];\n for (const size of breakpoints) {\n const sizeExists = await imageExists(`${basePath}-${size}.webp`);\n if (sizeExists) {\n const width = size === 'xs' ? 480 : size === 'sm' ? 768 : size === 'md' ? 992 : size === 'lg' ? 1200 : 1600;\n webpSrcsetParts.push(`${basePath}-${size}.webp ${width}w`);\n }\n }\n \n if (webpSrcsetParts.length > 0) {\n webpSource.srcset = webpSrcsetParts.join(', ');\n webpSource.sizes = sizes;\n picture.appendChild(webpSource);\n }\n }\n \n // Create JPEG source element (always included as fallback)\n const jpgSource = document.createElement('source');\n jpgSource.type = 'image/jpeg';\n \n // Build srcset for JPEG\n const jpgSrcsetParts = [];\n for (const size of breakpoints) {\n const sizeExists = await imageExists(`${basePath}-${size}.jpg`);\n if (sizeExists) {\n const width = size === 'xs' ? 480 : size === 'sm' ? 768 : size === 'md' ? 992 : size === 'lg' ? 1200 : 1600;\n jpgSrcsetParts.push(`${basePath}-${size}.jpg ${width}w`);\n }\n }\n \n if (jpgSrcsetParts.length > 0) {\n jpgSource.srcset = jpgSrcsetParts.join(', ');\n jpgSource.sizes = sizes;\n picture.appendChild(jpgSource);\n }\n \n // Create fallback img element\n const img = document.createElement('img');\n img.src = `${basePath}.jpg`;\n img.alt = alt;\n img.className = className;\n \n if (lazy) {\n img.loading = 'lazy';\n }\n \n if (width) {\n img.width = width;\n }\n \n if (height) {\n img.height = height;\n }\n \n if (style) {\n img.style = style;\n }\n \n picture.appendChild(img);\n \n return picture;\n}\n\n/**\n * Creates a responsive background image CSS using the most optimal format\n * \n * @param {HTMLElement} element - The element to apply background to\n * @param {string} imagePath - The path to the image (without extension)\n */\nexport async function setOptimizedBackground(element, imagePath) {\n if (!element) return;\n \n // Extract the base path without extension\n const basePath = imagePath.replace(/\\.(jpg|jpeg|png|gif)$/, '');\n \n // Check format support in browser\n const supportsAvif = document.createElement('canvas')\n .toDataURL('image/avif').indexOf('data:image/avif') === 0;\n \n const supportsWebp = document.createElement('canvas')\n .toDataURL('image/webp').indexOf('data:image/webp') === 0;\n \n // Get viewport width\n const viewportWidth = window.innerWidth;\n let sizePrefix = '';\n \n if (viewportWidth <= 480) {\n sizePrefix = '-xs';\n } else if (viewportWidth <= 768) {\n sizePrefix = '-sm';\n } else if (viewportWidth <= 992) {\n sizePrefix = '-md';\n } else if (viewportWidth <= 1200) {\n sizePrefix = '-lg';\n } else {\n sizePrefix = '-xl';\n }\n \n // Check which formats exist\n const avifExists = supportsAvif && await imageExists(`${basePath}${sizePrefix}.avif`);\n const webpExists = supportsWebp && await imageExists(`${basePath}${sizePrefix}.webp`);\n const jpgExists = await imageExists(`${basePath}${sizePrefix}.jpg`);\n \n // Choose best available format\n let imageUrl;\n if (avifExists) {\n imageUrl = `${basePath}${sizePrefix}.avif`;\n } else if (webpExists) {\n imageUrl = `${basePath}${sizePrefix}.webp`;\n } else if (jpgExists) {\n imageUrl = `${basePath}${sizePrefix}.jpg`;\n } else {\n // Fallback to original image\n imageUrl = `${basePath}.jpg`;\n }\n \n // Apply background\n element.style.backgroundImage = `url('${imageUrl}')`;\n \n // Update on resize for responsive sizes\n const handleResize = async () => {\n const newWidth = window.innerWidth;\n let newSizePrefix = '';\n \n if (newWidth <= 480) {\n newSizePrefix = '-xs';\n } else if (newWidth <= 768) {\n newSizePrefix = '-sm';\n } else if (newWidth <= 992) {\n newSizePrefix = '-md';\n } else if (newWidth <= 1200) {\n newSizePrefix = '-lg';\n } else {\n newSizePrefix = '-xl';\n }\n \n // Only update if size changed\n if (newSizePrefix !== sizePrefix) {\n // Check which formats exist at this size\n const newAvifExists = supportsAvif && await imageExists(`${basePath}${newSizePrefix}.avif`);\n const newWebpExists = supportsWebp && await imageExists(`${basePath}${newSizePrefix}.webp`);\n const newJpgExists = await imageExists(`${basePath}${newSizePrefix}.jpg`);\n \n // Choose best available format\n let newImageUrl;\n if (newAvifExists) {\n newImageUrl = `${basePath}${newSizePrefix}.avif`;\n } else if (newWebpExists) {\n newImageUrl = `${basePath}${newSizePrefix}.webp`;\n } else if (newJpgExists) {\n newImageUrl = `${basePath}${newSizePrefix}.jpg`;\n } else {\n // Fallback to original image\n newImageUrl = `${basePath}.jpg`;\n }\n \n // Update background\n element.style.backgroundImage = `url('${newImageUrl}')`;\n }\n };\n \n // Throttled resize handler\n let resizeTimeout;\n const resizeThrottler = () => {\n if (!resizeTimeout) {\n resizeTimeout = setTimeout(() => {\n resizeTimeout = null;\n handleResize();\n }, 200);\n }\n };\n \n window.addEventListener('resize', resizeThrottler);\n \n // Return cleanup function\n return () => {\n window.removeEventListener('resize', resizeThrottler);\n };\n}\n\n/**\n * Replaces all image tags with data-src attributes with optimized picture elements\n */\nexport async function enhanceImages() {\n try {\n // Find all images with data-src attributes\n const images = document.querySelectorAll('img[data-src]');\n \n // Process each image\n for (const img of images) {\n const imagePath = img.getAttribute('data-src');\n const alt = img.getAttribute('alt') || '';\n const className = img.className || '';\n const width = img.getAttribute('width') || '';\n const height = img.getAttribute('height') || '';\n const style = img.getAttribute('style') || '';\n \n try {\n // Generate picture element\n const pictureElement = await generatePictureTag(imagePath, {\n alt,\n className,\n lazy: true,\n width,\n height,\n style\n });\n \n // Replace the img with the picture element\n if (pictureElement && img.parentNode) {\n img.parentNode.replaceChild(pictureElement, img);\n }\n } catch (err) {\n console.warn(`Failed to enhance image ${imagePath}:`, err);\n // Keep the original image if enhancement fails\n }\n }\n \n // Find all elements with data-bg attributes for background images\n const bgElements = document.querySelectorAll('[data-bg]');\n \n // Process each background element\n for (const element of bgElements) {\n const imagePath = element.getAttribute('data-bg');\n \n try {\n await setOptimizedBackground(element, imagePath);\n \n // Remove the data-bg attribute to prevent re-processing\n element.removeAttribute('data-bg');\n } catch (err) {\n console.warn(`Failed to set optimized background for ${imagePath}:`, err);\n // Set a simple background as fallback\n element.style.backgroundImage = `url('${imagePath}')`;\n }\n }\n \n console.log('✅ Enhanced images with responsive formats');\n } catch (err) {\n console.error('❌ Error enhancing images:', err);\n }\n}\n\n// Export default for direct import\nexport default { generatePictureTag, setOptimizedBackground, enhanceImages }; ","// Simple entry point file\nconsole.log(`Main entry point loaded 730`);\n\n// Import SCSS\nimport './scss/main.scss';\n\n// Import bootstrap themes if needed\nimport './app/lib/bs-theme.js';\n\n// Import optimized image handling\nimport { enhanceImages } from './app/utils/optimizedImage';\n\n// Global coordination variables for URL fixing\nwindow.__urlFixesApplied = window.__urlFixesApplied || false;\nwindow.__urlFixesRunning = window.__urlFixesRunning || false;\n\n// More targeted URL fixing - run only if not already handled by fixurls.js\nconst fixAllPageContent = () => {\n // Skip if already fixed or being handled by fixurls.js\n if (window.__urlFixesApplied || window.__urlFixesRunning) {\n console.log('URL fixes already applied or being handled by fixurls.js, skipping duplicate fixes');\n return;\n }\n\n // Mark that main.js is handling URL fixes\n window.__urlFixesRunning = true;\n \n // Fix HTML content - targeted approach\n if (document.documentElement.innerHTML.includes('localhost')) {\n console.log('Found localhost references in HTML, fixing from main.js...');\n \n // Fix image sources\n document.querySelectorAll('img[src*=\"localhost\"]').forEach(img => {\n try {\n const url = new URL(img.src);\n img.src = url.pathname;\n } catch (e) {\n console.error('Error fixing image src:', e);\n }\n });\n \n // Fix data-src attributes\n document.querySelectorAll('[data-src*=\"localhost\"]').forEach(el => {\n try {\n const url = new URL(el.dataset.src);\n el.dataset.src = url.pathname; \n } catch (e) {\n console.error('Error fixing data-src:', e);\n }\n });\n \n // Record that fixes were applied\n window.__urlFixesApplied = true;\n console.log('URL fixes completed by main.js');\n } else {\n window.__urlFixesApplied = true;\n }\n \n // Signal that main.js is done with URL fixing\n window.__urlFixesRunning = false;\n};\n\n// Run this before any other code\ntry {\n fixAllPageContent();\n} catch (e) {\n console.error('Error fixing page content:', e);\n window.__urlFixesRunning = false;\n}\n\n// Block insecure resource loads before they happen\nconst setupResourceBlocker = () => {\n // Create a MutationObserver to watch for new elements being added to the DOM\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n // Check for added nodes\n mutation.addedNodes.forEach((node) => {\n // Only process element nodes\n if (node.nodeType === 1) {\n // Skip if this is our secure font link\n if (node.dataset && node.dataset.secureFont === 'true') {\n return;\n }\n\n // Block insecure scripts\n if (node.tagName === 'SCRIPT' && node.src) {\n // Force HTTPS for all external scripts\n if (node.src.startsWith('http://')) {\n console.warn('Blocked insecure script:', node.src);\n node.src = node.src.replace('http://', 'https://');\n }\n \n // Fix hostname if needed for viewingparty.net content\n if (node.src.includes('viewingparty.net/') && !node.src.startsWith('https://')) {\n console.warn('Fixed script URL:', node.src);\n node.src = 'https://viewingparty.net/' + node.src.split('viewingparty.net/')[1];\n }\n }\n \n // Block insecure stylesheets\n if (node.tagName === 'LINK' && node.rel === 'stylesheet' && \n node.href && node.href.startsWith('http://')) {\n console.warn('Blocked insecure stylesheet:', node.href);\n node.href = node.href.replace('http://', 'https://');\n }\n }\n });\n });\n });\n\n // Start observing the document body for changes\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true\n });\n};\n\n// Add Lato font with HTTPS to prevent mixed content\nconst addLatoFont = () => {\n // Only add if not already present\n if (!document.querySelector('link[href*=\"fonts.googleapis.com/css2?family=Lato\"]')) {\n const latoLink = document.createElement('link');\n latoLink.rel = 'stylesheet';\n latoLink.href = 'https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap';\n // Add a data attribute to mark this as our secure font link\n latoLink.dataset.secureFont = 'true';\n document.head.appendChild(latoLink);\n }\n};\n\n// Helper to fix all URLs in document\ndocument.addEventListener('DOMContentLoaded', () => {\n // Set up blocking of insecure resources\n setupResourceBlocker();\n \n // Add Lato font explicitly with HTTPS\n addLatoFont();\n\n // Check if we still need to do final URL fixes\n const needsFinalFixes = !window.__urlFixesApplied && \n document.documentElement.innerHTML.includes('localhost');\n \n if (needsFinalFixes && !window.__urlFixesRunning) {\n console.log('Running final URL fixes from main.js...');\n \n // Mark as running to prevent conflicts\n window.__urlFixesRunning = true;\n \n // Fix Google Fonts and other external resources using HTTP\n document.querySelectorAll('link[href^=\"http://\"]').forEach(link => {\n link.href = link.href.replace('http://', 'https://');\n });\n\n // Fix stylesheets using HTTP\n document.querySelectorAll('link[rel=\"stylesheet\"][href^=\"http://\"]').forEach(link => {\n link.href = link.href.replace('http://', 'https://');\n });\n\n // Fix all localhost images\n document.querySelectorAll('img[src*=\"localhost\"]').forEach(img => {\n const url = new URL(img.src);\n img.src = url.pathname;\n });\n\n // Fix all background images with localhost in styles\n document.querySelectorAll('[style*=\"localhost\"]').forEach(el => {\n let style = el.getAttribute('style');\n if (style) {\n // Extract URL, remove localhost part, keep path\n style = style.replace(/url\\(['\"]?http:\\/\\/localhost:[0-9]+([^'\"]+)['\"]?\\)/g, \"url('$1')\");\n // Ensure paths start with / if they don't already\n style = style.replace(/url\\(['\"]?([^\\/'][^'\"]+)['\"]?\\)/g, \"url('/$1')\");\n el.setAttribute('style', style);\n }\n });\n\n // Fix data-src attributes for lazy loading\n document.querySelectorAll('[data-src*=\"localhost\"]').forEach(el => {\n const url = new URL(el.dataset.src);\n el.dataset.src = url.pathname;\n });\n\n // Fix any relative data-src that doesn't start with /\n document.querySelectorAll('[data-src]').forEach(el => {\n if (el.dataset.src && !el.dataset.src.startsWith('/') && !el.dataset.src.startsWith('http')) {\n el.dataset.src = '/' + el.dataset.src;\n }\n });\n \n // Mark as complete\n window.__urlFixesApplied = true;\n window.__urlFixesRunning = false;\n \n console.log('Final URL fixes completed by main.js');\n }\n \n // Initialize lazy loading with a short delay\n setTimeout(() => {\n console.log(\"Direct lazy loading initialization from main.js\");\n try {\n // Try to import the lazy loading function directly\n import(/* webpackChunkName: \"lazyload\" */ './app/utils/startLaizyLoading.js')\n .then(module => {\n try {\n module.default({\n debug: process.env.NODE_ENV !== 'production', // Enable debug only in development\n // Other options...\n });\n console.log('Successfully initialized lazy loading');\n } catch (err) {\n console.error('Error initializing lazy loading:', err);\n }\n })\n .catch(err => {\n console.error('Error importing lazy loading module:', err);\n \n // Fallback to directly loading the script if dynamic import fails\n loadScriptSecurely('/js/lazyload.js')\n .then(() => console.log('Successfully loaded lazyload.js via fallback'))\n .catch(err => console.error('Failed to load lazyload.js via fallback:', err));\n });\n } catch (e) {\n console.error(\"Error initializing lazy loading:\", e);\n }\n }, 800);\n\n // Enhance all images with proper picture tags and formats\n enhanceImages();\n});\n\n// Helper to safely load a script with HTTPS enforcement\nconst loadScriptSecurely = (url, async = true, defer = false) => {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n \n // Ensure we're using HTTPS\n let secureUrl = url;\n if (secureUrl.startsWith('http://')) {\n secureUrl = secureUrl.replace('http://', 'https://');\n } \n \n // If no protocol specified but has domain, add https://\n if (!secureUrl.startsWith('http') && !secureUrl.startsWith('/') && \n secureUrl.includes('.')) {\n secureUrl = 'https://' + secureUrl;\n }\n \n // For viewingparty.net URLs, ensure proper formatting\n if (secureUrl.includes('viewingparty.net/') && !secureUrl.startsWith('https://')) {\n secureUrl = 'https://viewingparty.net/' + secureUrl.split('viewingparty.net/')[1];\n }\n \n // For relative URLs, keep as is\n if (!secureUrl.startsWith('http') && !secureUrl.includes('viewingparty.net')) {\n // Ensure it starts with / for absolute path from root\n if (!secureUrl.startsWith('/')) {\n secureUrl = '/' + secureUrl;\n }\n }\n \n script.src = secureUrl;\n script.async = async;\n script.defer = defer;\n \n script.onload = () => {\n console.log(`Successfully loaded script: ${secureUrl}`);\n resolve(script);\n };\n \n script.onerror = (error) => {\n console.error(`Failed to load script: ${secureUrl}`, error);\n reject(error);\n };\n \n document.head.appendChild(script);\n });\n}; "],"names":["inProgress","dataWebpackPrefix","getStoredTheme","localStorage","getItem","concat","storeTheme","theme","setItem","themeMode","document","querySelector","dataset","bsTheme","triggerThemeChange","mode","setButtonIcon","innerHTML","classList","remove","add","addEventListener","html","themeToggleButton","getElementById","body","toggle","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","m","d","definition","key","o","Object","defineProperty","enumerable","get","f","e","chunkId","Promise","all","keys","reduce","promises","u","miniCssF","obj","prop","prototype","hasOwnProperty","call","l","url","done","push","script","needAttach","scripts","getElementsByTagName","i","length","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","fn","setTimeout","bind","type","target","head","appendChild","r","Symbol","toStringTag","value","p","installedChunks","j","installedChunkData","promise","resolve","reject","error","Error","errorType","realSrc","message","name","request","webpackJsonpCallback","parentChunkLoadingFunction","data","chunkIds","moreModules","runtime","some","id","chunkLoadingGlobal","self","_regeneratorRuntime","t","n","a","iterator","c","asyncIterator","define","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","h","y","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","__await","then","callInvokeWithMethodAndArg","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","charAt","slice","stop","rval","handle","complete","finish","delegateYield","_createForOfIteratorHelper","Array","isArray","_arrayLikeToArray","toString","from","test","_unsupportedIterableToArray","_n","F","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","imageExists","img","Image","generatePictureTag","_x","_generatePictureTag","_callee","imagePath","options","_options$alt","alt","_options$className","className","_options$lazy","lazy","_options$sizes","sizes","_options$width","width","_options$height","height","_options$style","style","basePath","breakpoints","picture","avifSource","avifSrcsetParts","_iterator","_step","size","_width","webpSource","webpSrcsetParts","_iterator2","_step2","_size","_width2","jpgSource","jpgSrcsetParts","_i","_breakpoints","_size2","_width3","_args","_context","replace","t0","srcset","join","t1","loading","setOptimizedBackground","_x2","_x3","_setOptimizedBackground","_callee3","element","supportsAvif","supportsWebp","viewportWidth","sizePrefix","avifExists","webpExists","jpgExists","imageUrl","handleResize","resizeTimeout","resizeThrottler","_context3","toDataURL","indexOf","window","innerWidth","backgroundImage","_ref","_callee2","newWidth","newSizePrefix","newAvifExists","newWebpExists","newJpgExists","newImageUrl","_context2","removeEventListener","_enhanceImages","_callee4","images","_iterator3","_step3","pictureElement","bgElements","_iterator4","_step4","_imagePath","_context4","querySelectorAll","replaceChild","console","warn","removeAttribute","t2","t3","log","t4","__urlFixesApplied","__urlFixesRunning","documentElement","includes","URL","pathname","el","MutationObserver","mutations","mutation","addedNodes","node","nodeType","secureFont","tagName","startsWith","split","rel","href","observe","childList","subtree","latoLink","addLatoFont","link","debug","process","err","loadScriptSecurely","enhanceImages","defer","secureUrl"],"sourceRoot":""}