/** * Path fix script for static exports * This script helps to fix absolute path references in the static HTML * when served from a file system or simple static server */ (function() { // Only run this script when the window has loaded window.addEventListener('DOMContentLoaded', function() { // Fix for stylesheet links document.querySelectorAll('link[rel="stylesheet"]').forEach(function(link) { if (link.href.startsWith('http')) return; // Skip absolute URLs if (link.href.startsWith('/')) { link.href = './' + link.href.slice(1); } }); // Fix for script tags document.querySelectorAll('script[src]').forEach(function(script) { if (script.src.startsWith('http')) return; // Skip absolute URLs if (script.src.startsWith('/')) { script.src = './' + script.src.slice(1); } }); // Fix for images document.querySelectorAll('img[src]').forEach(function(img) { if (img.src.startsWith('http')) return; // Skip absolute URLs if (img.src.startsWith('/')) { img.src = './' + img.src.slice(1); } }); // Initialize the mobile menu toggle const toggleButton = document.querySelector('[aria-haspopup="dialog"]'); const sheet = document.querySelector('[data-state="closed"]'); if (toggleButton && sheet) { toggleButton.addEventListener('click', function() { const isOpen = sheet.getAttribute('data-state') === 'open'; sheet.setAttribute('data-state', isOpen ? 'closed' : 'open'); toggleButton.setAttribute('aria-expanded', !isOpen); }); } }); })();